git的命令行语法噢
接触git进行版本管理源代码,常用一些基础的推拉命令/sourceTree
今天看着旁边大佬一顿操作命令行,执行速度杠杠的,sourceTree在这方面完全不能比
三大区域
工作区、暂存区和Git仓库(本地/远端)
git add, git commit, git push, git merge, git pull, git log
git add
会将工作区的文件标记为已暂存,保存在暂存区
git commit
会将标记为已暂存的文件保存都本地Git仓库,并生成一个快照
git diff
查看修改,谢谢您了这个请用可视化吧
未暂存前,撤销修改
git checkout -- .
撤销所有本地修改
git checkout -- [filename]
撤销指定文件修改
暂存后,撤销修改
git reset .
撤销暂存区的全部修改
提交到本地仓库后,撤销提交
git commit -m "modify some files"
提交历史里面会有一条记录
git checkout a18c6fa
git log
回到上一次提交记录,执行log
git reset --hard HEAD~1
或者重置
git reflog
git reset --hard f8651ff
又反悔了,那就再找到f8651ff
修改提交
提交了一个文件,又想提交一个,但不想2条记录git add xx
git commit -m "add test block"
git log
git add src/app/app.component.css
git commit --amend
修改一个词,会改变之前的idgit commit --amend -m "add test container"
撤销提交历史中的某一次提交
git revert 711bb0b
合并出现冲突时撤销合并
git merge --abort
撤销这个合并,恢复合并之前的状态
移除暂存区的文件
git rm --cached src/test.pptx
分支重命名
git br -m [old_br] [new_br]
撤销变基操作
git co rebase_test
git rebase master
1.使用 git reflog 命令找到变基前的提交 09b0adc
2.使用 git reset –hard 09b0adc 重置到该提交
删除远端仓库记录
密码文件可以通过git快照恢复
git filter-branch –tree-filter ‘rm -f passwords.txt’ HEAD
交互式变基
git rebase -i
对本地分支进行合并操作,让提交变成一条直线,不适合远程分支操作