Git 完全手册:从入门到团队协作实战(3)
Hello大家好!很高兴我们又见面啦!给生活添点passion,开始今天的编程之路!
我的博客:<但凡.
我的专栏:《编程之路》、《数据结构与算法之美》、《C++修炼之路》、《Linux修炼:终端之内 洞悉真理》
感谢你打开这篇博客!希望这篇博客能为你带来帮助,也欢迎一起交流探讨,共同成长。
这期我们简单说说远程操作以及标签管理。
目录
1、 远程操作
1.1、SSH协议克隆仓库
1.2、推送与拉取
2、给命令配置别名
3、标签管理
3.1、创建标签
3.2、删除标签
1、 远程操作
在第一期我们其实已经把本地仓库和远端连接起来的,并且已经介绍了如何绑定邮箱。需要注意的时,远端和本地绑定的邮箱必须是一样的,否则会出问题,比如提交不显示小绿点。
1.1、SSH协议克隆仓库
我们接着说一下克隆仓库。在第一期我们克隆仓库使用的是HTTPS协议,其实还有一种常用协议是SSH协议,SSH协议使用了公钥加密和公钥登录机制,体现了其实用性和安全性。
我们使用SSH协议克隆一下仓库:
第一步,获得SSH key
我们得把公钥放到远端库中,所以先想办法获得公钥。
首先我们执行以下命令,看看系统中有没有.ssh文件:
find 当前用户主目录 -name .ssh
如果没有的话,我们需要手动创建SSH key:
ssh-keygen -t rsa -C 你的邮箱
执行这串指令之后,一路ENTER,他就生成好密钥了。此时.ssh目录就生成在了用户的主目录里面。我们直接cd .ssh进入。
其实这里面就两个文件,我们要的是id_rsa.pub,这个是公钥,另外一个id_rsa是私钥。 我们cat一下直接把这串东西复制下来,一定要复制完整。
第二步, 添加公钥到远端仓库。
我们来到gitee官网,从右上角找到设置,接着点击SSH公钥,把刚才的公钥复制进去:
标题随便起就可以,默认是你绑定的邮箱。接着我们使用git clone就可以克隆仓库了哈~
我们可以使用git remote查看远端仓库名,默认应该是origin。
1.2、推送与拉取
我们先说一下怎么推送到远端仓库,我们可以使用以下命令来推送:
git push -u origin 分支名
-u参数将本地分支与远端分支关联,后续我们直接git push就行了。
需要注意的是,git push只会推送当前分支到远端,如果我们想一次性推送所有分支可以执行以下命令:
git push --all origin
我们可以使用以下命令来拉取仓库:
git push -u origin 分支名
我们使用以下命令检查远端分支状态:
git remote show origin
2、给命令配置别名
有时候我们敲得命令会带一堆选项,导致这个命令特别长,这时候我们就可以给命令取别名来简化输入的命令。
第一种方法,我们通过Git配置文件来设置别名,打开或者创建全局配置文件~/.gitconfig。在文件中添加[alias]部分:
[alias]co = checkoutbr = branchci = commitst = status
第二种方法是通过命令的方式设置别名,效果和第一种相同:
git config --global alias.想要替代为的名字 命令
git config --global alias.co checkout
git config --global alias.br branch
3、标签管理
3.1、创建标签
在之前的版本回退的时候,我们想要回退到具体的版本都需要那个版本的commit id,我们能不能给一些特定的commit id打标签,在回退的时候方便管理方便记忆呢?
我们可以通过以下命令来打标签:
git tag v1.0 commitid
如果不加commit id,他默认是打在当前分支最新的一次提交上。
接着我们可以通过以下命令查看所有标签:
git tag
我们可以通过以下命令查看标签信息:
git show v1.0
我们还可以创建带有说明的标签:
git tag -a [name] -m "XXX" [commit id]
3.2、删除标签
我们可以使用以下命令删除标签:
git tag -d v1.0
创建的标签都是在本地的,如果我们想把标签推送到远端仓库可以使用以下命令:
git push origin <tagname>
我们也可以使用以下命令,一次性把本地标签全部推送到远端:
git push origin --tags
接着我们就可以在gitee官网中看到我们的标签:
从远端删除标签我们使用以下命令:
先本地删除:
git tag -d v1.0
再从远端删除:
git push origin :refs/tags/v1.0
好了,今天的内容就分享到这,我们下期再见!