



Fast
forward模式,但这种模式下,删除分支后,会丢掉分支信息。
如果要强制禁用Fast
forward模式,Git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。在merge的时候通过命令:git merge --no-ff -m "merge with no-ff" dev
软件开发中,bug就像家常便饭一样。有了bug就需要修复,在Git中,由于分支是如此的强大,所以,每个bug都可以通过一个新的临时分支来修复,修复后,合并分支,然后将临时分支删除。
当你接到一个修复一个代号101的bug的任务时,很自然地,你想创建一个分支issue-101来修复它,但是,等等,当前正在dev上进行的工作还没有提交,
并不是你不想提交,而是工作只进行到一半,还没法提交,预计完成还需1天时间。但是,必须在两个小时内修复该bug,怎么办?
幸好,Git还提供了一个stash功能,可以把当前工作现场“储藏”起来,等以后恢复现场后继续工作
流程大概如下

使用git
stash apply恢复,恢复后,stash内容并不删除,你需要用git stash drop来删除,用git
stash pop,恢复的同时把stash内容也删了

origin/dev分支推送了他的提交,而碰巧你也对同样的文件作了修改,并试图推送,此时会因为冲突报错

如果git pull也失败了,原因是没有指定本地dev分支与远程origin/dev分支的链接,根据提示,设置dev和origin/dev的链接:
$ git branch --set-upstream dev origin/dev
合并后进行commit



.gitignore文件,并输入*.class,再次执行git
status,发现class文件没有被跟踪了


原文:http://blog.csdn.net/eric_sunah/article/details/42921133