【Git】远程操作 + 给命令配置别名 + 标签管理
【Git】远程操作 + 给命令配置别名 + 标签管理
- SSH 协议和 HTTPS 协议 (皆数据传输协议)
- SSH协议的使用:(ssh-keygen -t rsa -C "123123123@qq.com")
- 向远程仓库推送
- 拉取远程仓库
- Git忽略特殊⽂件 (.gitignore)
- git add -f [filename] # 被 .gitignore 忽略的文件,⽤ -f 强制添加
- git check-ignore
- !.gitignor (不排除.gitignore)
- 给命令配置别名
- 标签管理
- 创建标签 (git tag [name] commit_id)
- 创建带有说明的标签(git tag -a [name] -m "XXX" [commit_id])
- git show [tagname] # 查看标签信息
- 删除标签(git tag -d [已有标签名])
- 推送某个标签到远程 (git push origin <tagname>)
- 一次推送多个标签 (git push origin --tags)
- 删除远程标签

SSH 协议和 HTTPS 协议 (皆数据传输协议)
SSH 协议和 HTTPS 协议是 Git 最常使⽤的两种数据传输协议
- SSH 协议使⽤了公钥加密和公钥登陆机制,体现了其实⽤性和安全性,使⽤此协议需要将我们的公钥放上服务器,由 Git 服务器进⾏管理。
- HTTPS ⽅式时,没有要求,可以直接克隆下来。
SSH协议的使用:(ssh-keygen -t rsa -C “123123123@qq.com”)
-
创建SSH Key。在⽤⼾主⽬录下,看看有没有.ssh⽬录,如果有,再看看这个⽬录下有没有
id_rsa 和 id_rsa.pub 这两个⽂件,如果已经有了,可直接跳到下⼀步。如果没有,需要创建
SSH Key: -
用户主目录里有.SSH目录,⾥⾯有 id_rsa 和 id_rsa.pub 两个⽂件,这两个就是SSH Key的秘钥对, id_rsa 是私钥,不能泄露出去, id_rsa.pub 是公钥,可以放⼼地告诉任何⼈
打开gitee设置:
当我们从远程仓库克隆后,实际上 Git 会⾃动把本地的 master 分⽀和远程的 master 分⽀对应起来,并且,远程仓库的默认名称是 origin 。在本地我们可以使⽤ git remote 命令,来查看远程库的信息,如
向远程仓库推送
设置过全局的 name 和 e-mail,这两项配置需要和 gitee 上配置的⽤⼾名和邮箱⼀致,否则会出错
将本地的分⽀版本上传到远程并合并
git push <远程主机名> <本地分⽀名>:<远程分⽀名> # 本地推到远程
如果本地分⽀名与远程分⽀名相同,则可以省略冒号:
git push <远程主机名> <本地分⽀名>
SSH:不⽤每⼀次推送都输⼊密码的
HTTPS 协议,每次推送都必须输⼊⼝令
.# git push origin master //配置的是SSH协议,不用输密码信息
拉取远程仓库
远程仓库是要领先于本地仓库⼀个版本,为了使本地仓库保持最新的版本,我们需要拉取下远
端代码,并合并到本地。Git 提供了 git pull : 从远程获取代码并合并本地的版本。格式如下
git pull <远程主机名> <远程分⽀名>:<本地分⽀名> # 远程拉到本地
如果远程分⽀是与当前分⽀合并,则冒号后⾯的部分可以省略。
git pull <远程主机名> <远程分⽀名>
Git忽略特殊⽂件 (.gitignore)
gitee 在创建仓库时就可以为我们⽣成,也可以本地⼯作区touch一个,然后推到远程
gitee里创建的.gitignore默认忽略以下文件
git add -f [filename] # 被 .gitignore 忽略的文件,⽤ -f 强制添加
git check-ignore
.gitignore 写得有问题,需要找出问题,如:a.so是要被添加的,可以⽤ git check-ignore 命令检查:
vim .gitignore往里添加了.so*
!.gitignor (不排除.gitignore)
// 排除所有.开头的隐藏⽂件:
.
// 不排除.gitignore
!.gitignor*
给命令配置别名
git config --global alias.st status # 将git status 简化为 git st ,
标签管理
标签 tag ,对某次 commit 的⼀个标识,相当于起了⼀个别名
创建标签 (git tag [name] commit_id)
- 切换到需要打标签的分⽀上
- git tag [name] #打⼀个名为name的新标签
- git tag # 查看所有标签
默认标签是打在最新提交的 commit 上的。
那如何在指定的commit上打标签呢?⽅法是找到历史提交的commit id,
git tag v0.0 commit id # 向commit id 打标签
// 标签不是按时间顺序列出,⽽是按字⺟排序的
创建带有说明的标签(git tag -a [name] -m “XXX” [commit_id])
⽤-a指定标签名,-m指定说明⽂字
git show [tagname] # 查看标签信息
删除标签(git tag -d [已有标签名])
git tag -d [已有标签名]
推送某个标签到远程 (git push origin )
一次推送多个标签 (git push origin --tags)
删除远程标签
- git tag -d v1.0 # 先从本地删除:
- git push origin :refs/tags/v1.0 # 推到远程,删除也是修改