git主要命令 及与svn的对比

场景

Svn

Git

1

下载代码

svn checkout

git clone

2

加入版本控制

svn add

git add

3

本地提交

-

git commit

4

提交到服务器

svn commit

git push

5

获取其他人的更新

svn update

git fetch/pull[fetch不会自动merge,pull自动merge]

6

查看状态

svn status / log / diff

git status / log / diff

7

新建本地分支

-

git branch

8

切换分支/版本

svn switch

git checkout

9

合并分支

svn merge

git merge/rebase

git pull

【git pull = git fetch + git merge】

【git pull origin master】表示将远程origin主机的master分支拉取过来和本地的当前分支进行合并。

【git pull origin master:brantest】将远程主机origin的master分支拉取过来,与本地的brantest分支合并。

git commit

【git commit --amend(回车后在vim填写及操作)】--amend命令是 [git reset --soft HEAD^] 和 [git commit -a -F .get/COMMIT_EDITMSG] 两条命令的结合体,意思就是修改上次的提交(提交的内容和msg),不会产生额外的commit。

git push

git push <远程主机名> <本地分支名> : <远程分支名>

【git push origin master:refs/for/master】是将本地的master分支推送到远程主机origin上的对应master分支。(origin 是远程主机名,第一个master是本地分支名,第二个master是远程分支名)

【git push origin master】如果远程分支被省略,如上则表示将本地分支推送到与之存在追踪关系的远程分支(通常两者同名),如果该远程分支不存在,则会被新建。

【git push origin HEAD:refs/for/master】HEAD是一个特别的指针,它是一个指向你正在工作的本地分支的指针,可以把它当做本地分支的别名,git这样就可以知道你工作在哪个分支。refs/for :意义在于我们提交代码到服务器之后是需要经过 code review 之后才能进行merge的,而refs/heads是不需要评审的。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值