git常用命令
常用命令
- clone远程仓库到本地:在准备放仓库的路径下,git clone +仓库地址
- 更新本地仓库:git pull
- 查看仓库提交状态:git status
- 放弃所有更改:git checkout .
- 修改commit的注释:git commit –amend,进入vim编辑后保存
- 分支管理
- 切换分支:git checkout 分支名
- 新建本地分支并切换:git checkout -b 分支名
- 提交本地分支到远程,创建/更新同名远程分支:git push origin 本地分支名
- 删除远程分支:git push –delete origin 远程分支名
- 删除本地分支 (ps:先切换到其他分支,才能删除该分支):git branch -d 本地分支名
常用操作
同步
1.保存本地更改
1 | git add . |
2.保存提交
1 | git commit -m "本次提交的备注" |
3.本地仓库和远程同步
1 | git pull |
4.将提交推到远程仓库
1 | git push |
合并分支—分支合并到master / master合并到分支
1.进入要合并的分支并更新(如开发分支合并到master,则进入master目录)
1 | git checkout master |
2.查看所有分支是否都pull下来了
1 | git branch -a |
3.使用merge合并开发分支
1 | git merge 分支名 |
4.查看合并之后的状态
1 | git status |
5.提交,并解决冲突
1 | git commit -m "备注" |
6.推到远程仓库
1 | git push |
删除指定提交(只有指定提交被删除)
1.查看log,找到需要删除的commit的前一次commit的hash值(假设是a0ecfc)
1 | git reflog |
2.打开文档,将待删除commit前将“pick”改成“drop”
1 | git rebase -i a0ecfc |
3.保存文档
4.强制推到远程仓库(本地和远程的提交数据会被清除,谨慎操作,注意备份!)
1 | git push origin -f |
删除已push的提交(回滚,指定提交之后的所有提交都被删除)
1.查看commit
1 | git log --pretty-log=oneline |
2.如果想要从“更新readme”撤回到“修改readme”,使用git reset
- 三种模式根据需要使用:
- –soft:本地代码无变化,”更新readme格式”的commit被放在暂存区,相当于已经执行了git add .
- –mixed:本地代码无变化,”更新readme格式”的commit修改没被放在暂存区,如果提交,需要先执行git add .
- –hard:本地代码变化,强制回滚到指定版本内容,且无法找回
1 | git reset --soft 5bc315cee3657f13c58c596614b524dbfbb1148e |
3.查看当前commit,发现“更新格式”commit已经被撤回
1 | git log --pretty-log=oneline |
4.强制push (因为当前版本回滚了,比远程分支版本低,不强制执行会报错)
1 | git push --force |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 只取壹瓢饮!