远程仓库

git remote :列出每个远程库的简短名字。如:origin。

git remote -v :显示对应的克隆地址,如:

originhttp://gitlab.xxx.corp/xxx.git

添加远程库:

git remote add pb git://github.com/xxx.git

pb 指代对应的仓库地址。

git fetch pb : 抓取远程有的,但本地仓库没有的信息。

fetch 命令只是将远端的数据拉到本地仓库,并不自动合并到当前工作分支。

git pull :自动抓取数据下来,然后将远端分支自动合并到本地仓库中当前分支。

推送数据到远程仓库

$ git push origin master

如果在你推数据前,已经有其他人推送了若干更新,那你的推送操作就会被驳回。你必须先把他们的更新抓取到本地,合并到自己的项目中,然后才可以再次推送。

远程仓库的删除和重命名

想把 pb 改成 paul,可以这么运行:

$ git remote rename pb paul

删除远程仓库,可以运行 git remote rm 命令:

$ git remote rm paul$ git remoteorigin

标签

列显已有的标签

$ git tagv0.1v1.3

可以搜索标签,如果你只对 1.4.2 系列的版本感兴趣:

$ git tag -l 'v1.4.2.*'v1.4.2.1v1.4.2.2v1.4.2.3

新建标签

Git 使用的标签有两种类型:轻量级的(lightweight)和含附注的(annotated)。轻量级标签就像是个不会变化的分支,实际上它就是个指向特定提交对象的引用。而含附注标签,实际上是存储在仓库中的一个独立对象,它有自身的校验和信息,包含着标签的名字,电子邮件地址和日期,以及标签说明,标签本身也允许使用 GNU Privacy Guard (GPG) 来签署或验证。一般我们都建议使用含附注型的标签,以便保留相关信息;当然,如果只是临时性加注标签,或者不需要旁注额外信息,用轻量级标签也没问题。

轻量级标签

轻量级标签是一个保存着对应提交对象的校验和信息的文件。

$ git tag v1.4

含附注的标签

创建一个含附注类型的标签非常简单,用 -a (译注:取 annotated 的首字母)指定标签名字即可:

$ git tag -a v1.4 -m '备注信息'$ git tagv1.4

-m 选项指定了对应的标签说明,Git 会将此说明一同保存在标签对象中。

签署标签

如果你有自己的私钥,还可以用 GPG 来签署标签,只需要把之前的 -a 改为 -s (signed 的首字母)即可:

$ git tag -s v1.5 -m 'my signed 1.5 tag'You need a passphrase to unlock the secret key foruser: "Scott Chacon "1024-bit DSA key, ID F721C45A, created 2009-02-09

可以运行 git show 查看相应标签信息。

验证标签

可以使用$ git tag -v v1.4.1 的方式验证已经签署的标签。此命令会调用 GPG 来验证签名,所以你需要有签署者的公钥,存放在 keyring 中。

后期加注标签

你可以在后期对早先的某次提交加注标签。

$ git tag -a v1.2 9fceb02

9fceb02 : 提交的id

分享标签

git push 并不会把标签传送到远端服务器上,需要下面命令:

$ git push origin v1.5

如果要一次推送所有本地新增的标签上去,可以使用 --tags 选项:

$ git push origin --tags

下篇会讲Git分支合并、冲突处理

3a2bcdb2fe126b9c2eba99997436e42e.png
Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐