上一章Git教程请查看:Git修复错误详细操作步骤
这一章我们开始讨论Git中标签tag操作,以及Git补丁patch操作。
一、git标签tag操作
标签操作允许为仓库中的特定版本提供有意义的名称,设UserA和UserB决定标记他们的项目代码,以便以后可以方便地访问它。
1、创建标签
让我们使用git tag命令标签当前的HEAD,userA使用-a选项提供标签名称,并使用-m选项提供标签消息。
$ pwd
/home/repo/project
$ git tag -a "Release_1_0" -m "标记基本字符串操作代码" HEAD
如果你想标记一个特定的提交,那么使用适当的提交ID而不是头指针,userA使用以下命令将标签推送到远程仓库。
$ git push origin tag Release_1_0
2、查看标签
userA创建了标签,现在UserB可以使用带有-l选项的Git标签命令查看所有可用的标签。
$ pwd
/home/repo/project/src
$ git pull
$ git tag -l
Release_1_0
userB使用Git show命令及其标签名来查看关于标签的更多细节。
$ git show Release_1_0
3、删除标签
userA使用以下命令从本地和远程仓库中删除标签。
$ git tag
Release_1_0
$ git tag -d Release_1_0
$ git push origin :Release_1_0
二、git补丁patch操作
Patch是一个文本文件,它的内容类似于Git diff,但是除了代码之外,它还有关于提交的元数据如提交ID、日期、提交消息等。我们可以通过提交创建一个补丁,其他人可以将它们应用到他们的仓库中。
userB为他的项目实现strcat函数,userB可以创建代码的路径并将其发送给userA,然后他可以将收到的补丁应用到他的代码中。
userB使用Git format-patch命令为最新的提交创建一个补丁,如果你想为特定的提交创建一个补丁,那么使用COMMIT_ID和format-patch命令。
$ pwd
/home/repo/project/src
$ git status -s
M string_operations.c
?? string_operations
$ git add string_operations.c
$ git commit -m "Add strcat function"
$ git format-patch -1
上面的命令在当前工作目录中创建.patch文件,userA可以用这个补丁修改他的文件,git提供了两个命令来应用补丁,分别是Git amand和 Git apply,Git apply修改本地文件而不创建提交,而Git amand修改文件并创建提交。
要应用补丁和创建提交,请使用以下命令
$ pwd
/home/repo/project/src
$ git diff
$ git status –s
$ git apply 01-xxx.patch
$ git status -s
M string_operations.c
补丁成功应用,现在我们可以使用git diff命令查看修改。
$ git diff
评论前必须登录!
注册