标签:git
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文件没有被跟踪了
标签:git
原文地址:http://blog.csdn.net/eric_sunah/article/details/42921133