本文属于Git入门命令操作的补充,所以不涉及最基本的使用命令。
推荐快速入门教程:https://backlog.com/git-tutorial/cn/
查看分支
查看本地分支
git branch
查看远程分支git branch -r
查看所有分支git branch -a
pull远程指定分支(本地无对应分支)
先执行
git fetch
然后再执行git checkout -b 本地分支名 origin/远程分支名
撤销
git reset --hard
操作方法1:
先执行git reflog
,查看reset操作之前的那个commit id
然后把那个id带入命令执行git reset --hard <commit id>
具体例子可以参考https://www.jianshu.com/p/8b4c95677ee0
方法2:
更好的方法是执行git reset --hard ORIG_HEAD
即可删除远程分支
先执行
git branch -r
查看远程分支
再执行git branch -r -d origin/branch-name
,删除本地对应的远程分支名称(这一步可能可以不要,下次来测试一下)
最后执行git push origin :branch-name
提交一个空分支来删除远程分支或git push origin --delete branch-name
删除远程分支取消暂存(index)
执行
git reset HEAD <file>...
丢弃文件的修改
执行
git checkout -- <file>...
(该操作无法恢复)取消文件的跟踪
执行
git rm -r --cached <文件>...
取消跟踪,-r
表示递归,针对目录文件
注意,对于用.gitignore忽略的文件,必须是未跟踪的文件修改已经push上去的提交
通过
git commit --amend
命令,将本地的提交记录修正过来
然后执行git push <remote> <branch> --force
,强制让远端记录与本地保持一致
需要注意的是,这可能会使远端其他人的提交丢失,以及当其他人pull了未修改的提交时,处理起来也很麻烦,具体参考git - How to modify existing, unpushed commits? - Stack Overflow
参考:
1. git 拉取远程指定分支 pull本地不存在的分支
2. 如何撤销git reset –hard操作
3. git 删除远程分支
4. git命令行删除远程分支
5. Git查看、删除、重命名远程分支和tag
6. Git-命令行-删除本地和远程分支
7. 猴子都懂的Git入门stepup7_3
8. git取消文件跟踪
9. Git 基础 - 撤消操作
10. 七个你无法忽视的Git使用技巧 - 开源中国社区