Git使用总结

仓库与分支

克隆远程仓库: git clone <remote_url>,Clone之后会将远程仓库整个下载下来,并起名origin。另外会建立一个local的master分支(可以认为是把origin/master复制了一份),并与origin/master关联起来。记住,你的所有修改都是针对local branch。

查看远程仓库的信息: git remote -v

查看local branch: git branch

查看(已同步到本地的)remote branch: git branch -r,这些branch称为tracked remote branch,超前或落后都是针对这些branch。

同步远程仓库到本地: git fetch origin,会将远程服务器上的所有版本同步到本地的origin。当然也可以只同步远程服务器的某个分支。

创建分支:git checkout -b <branch_name>,即把当前分支复制一份到新的分支<branch_name>,并且换到新的分支上。

checkout远程分支:假设别人已经push了一个分支,而且你已经通过fetch同步过了,你想在该分支上工作怎么办?git checkout -b <branch_name> origin/<branch_name>。(对于支持pull request的系统,建议自己的branch改个名字,然后通过pull request合并到别人的分支上。)

 merge某分支到当前分支: git merge <branch_name>。pull命令相当于fetch+merge,比如当前分支为master,git pull相当于 git fetch origin, git merge origin/master。

修改与提交

git的操作是针对change的,而不是针对文件的。工作区:已修改还未add的change。暂存区(stage或者叫index):已add还未commit的change。

添加修改与提交:git add <files>git commit -m "comment"

撤销修改:git checkout -- <file>,或者要回到某个版本号git checkout <commit_id> <file>,是要回到的版本号。但是该命令对已经add的文件无效。

撤销add:git reset <file>

丢弃所有文件的修改,而不用一个个去撤销:git stash save --keep-index,然后git stash drop

补充提交:git commit --amend。即上次的commit还没有同步到远程,想在里面再改点东西,而不愿再创建一个commit。

将本地版本同步到远程:git push --set-upstream origin <local_branch>。会同时同步到远程服务器和远程服务器的本地镜像(origin)。这是第一次同步,--set-upstream origin,表示将<local_branch>关联到origin的同名branch。一旦关联建立,就只需git push

Stash

将所有未commit的修改存入stash:git stash

这时就可以切换到别的分支工作,回来之后,git stash pop,就可以复原了。stash里面其实可以存多个版本,git stash list就可以看到所有的stash,存入stash的时候还可以起个名字。

参考资料

Git远程操作详解,来自阮一峰的博客,对clone,remote,fetch,pull,push讲解的很好。

常用Git命令清单Git工作流程,作者阮一峰

廖雪峰的Git教程号称史上最浅显易懂的git教程

Git book中文版

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值