最近用到git操作比较多,这里记录一下,方便以后忘记的时候查阅:
普通的提交代码
git status
git add .
git commit -m "注释"
git pull origin master
git push origin master
创建并切换到新分支
git checkout -b branchName
创建分支
git branch branchName
切换分支
git checkout branchName
或 git switch branchName
查看所有分支
git branch -a
查看当前所在分支
git branch
创建分支并将该分支推送到远端
git checkout -b branchName
git push -u origin branchName
删除分支并推送到远端
git checkout master //先切换到其它分支,比如master分支
git branch -d branchName
git push origin --delete branchName
重命名分支并推送到远端
git branch -m oldBranchName newBranchName
git push origin --delete oldBranchName
git push -u origin newBranchName
合并分支
eg:合并 roDev 到 bs2Dev
git checkout roDev
git pull
git checkout bs2Dev
git pull
git merge roDev
暂存更改
git stash save "注释"
查看stash列表
git stash list
将堆栈中最新的内容pop出来应用到当前分支上,且会删除堆中的记录
git stash pop
或
git stash apply //与pop相似,但他不会在堆栈中删除这条缓存,适合在多个分支中进行缓存应用
恢复指定的stash的内容
git stash pop stash@{0}
或
git stash apply stash@{0} //其中stash@{0}为git stash list中的暂存的名称
删除缓存
git stash drop [名] //删除单个缓存 举例git stash drop stash@{0}
git stash clear //删除全部缓存
ps: git stash是针对整个git工程来进行保存的,也就是说区分不了branch.比如我在a分支git stash save "sss"暂存了一个修改,那么我切换到b分支,我使用git stash pop 就能把在a分支保存的"sss"这个修改同步到了b分支上.所以当我们需要在不同的分支上取出不同的分支上保存的修改,那么就用到了git stash list,这个命令可以把在所有分支上暂存的信息显示出来,然后我们通过 git stash apply stash@{0} 来选择恢复哪个暂存,stash@{0}这个会在list中列出来
ps: 日常工作流
//在自己的dev分支上开发时
git stash save '暂存备注'
git pull origin master //相当于 git checkout master|git pull|git checkout dev|git merge master
git stash pop //这里可能存在冲突,有冲突的话在本地合并冲突
git add .
git commit -m "注释"
git push
暂时先总结这么多,后面用到的会再补充进来…