git merge默认会采用fast-forward方式,此时会丢失分支信息(即使用git log查看的时候不会显示分支的合并),要想保存分支信息,可以使用--no-ff选项
git merge -no-ff feature1
git log --graph --pretty=oneline --abbrev-commit
当在dev分支工作时候,需要临时修改bug的时候,可以使用git stash保存现场后,在切换到master分支,然后在创建bug分支,修改bug后再返回到master分支,合并bug分之后,返回dev分支后,在使用git stash pop 恢复现场,完整过程如下
git stash # dev分支
git checkout master
git checkout -b bug101
############ 修改bug git add git commit....###############
git checkout master
git merge --no-ff bug101
git checkout dev
git stash list # 查看保存的现场信息
git stash pop # 恢复现场,并且删除现场信息,即通过git stash list看不到任何内容
如果需要添加一个新功能,需要创建一个feature分支,当在该feature分支上执行git add和git commit,没有执行合并(git merge)的话,无法通过git branch -d feature 删除该分支,若要强行删除该分支,需要执行
git branch -D feature #强行删除该分支
查看远程库的信息
git remove -v # -v选项显示详细信息
Git 教程系列文章:
Git使用图文详细教程