2021-08-30

内容目录

分支命令

撤销/删除

工作暂存

远程库命令

代码推送远程

遇到的问题


cat <file>        查看文件内容

git diff HEAD <file       查看工作区和版本库里面最新版本的区别

分支命令

git branch        查看分支

git branch <branchname>        创建分支

git checkout <branchname> 或者 git switch <branchname>         切换分支

git checkout -b <branchname> 或者 git switch -c <branchname>        创建+切换分支

git merger <branchname>        合并分支到当前分支

git branch -d <branchname>        删除分支

撤销/删除

git checkout <file>            撤销工作区的修改

git reset HEAD <file>        撤销暂存区的修改(回退到工作区)

git branch -d <localbranch>         删除本地分支,若是没有开发结束会要求使用 -D。

git log --graph --pretty=oneline --abbrew-commit        查看 git log 的分支情况

git log --graph        查看分支合并图

工作暂存

当在一个分支的修改还没有结束时,需要在另一个分支进行其他工作时,可以对目前的工作进行暂存,等优先级较高的任务完成后再从暂存区取出。

git stash        储存工作现场,此时该分支是干净的,没有修改的文件。

//切换到其他分支进行工作,工作结束。切回到原始工作分支。

git stash list        查看储存的工作现场

git stash apply        恢复现场,但是 stash 内容不会删除

git stash drop         删除 stash 内容

git stash pop          等同于上述两个命令,恢复现场 + 删除 stash

远程库命令

从远程库 clone 时,GIT 自动把本地的 master 和远程的 master 对应起来,并且远程的仓库默认名称为 origin。

git remote -v        查看远程库

git remote add origin git@github.com:michaelliao/learngit.git        关联远程库

git remote rm <name>        删除远程库,如 git remote rm origin。仅仅是解除了本地和远程的关系。

代码推送远程

git push -u origin master     第一次给仓库推送代码时加 -u ,使得Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来。后续就可以简化命令。

git push origin master        把本地库的所有内容推送到远程库(当前分支master推送到远程)

git push origin <localbranch> -f        将本地分支的代码推送到远程库(远程分支名和本地分支名相同)。

git push origin <localbranch>:<remotebranch> -f

遇到的问题

rebase 的时候可能出现冲突,导致 rebase 不会在执行完一次命令之后就可以成功。

git rebase upstrem master   一般会出现冲突需要解决掉。这时候查看 git branch 会显示 no branch,此时不能就行其他操作,只能进行冲突解决。

尤其注意,若是进行 git commit --amend 则会使得代码被何如到其他的分支中,出现故障,导致远程库中有两个 commit ,这是我们不希望的。若是不小心出现了这种情况,解决方法就是:新建一个干净的分支 new branch,然后 git cherry-pick <commit id>  这里的 commit id 是需要我们复制的正确的 commit,然后关闭原先 PR, 重新 push 代码,重新提 PR 即可。

Git Cheat Sheet

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值