如何使用git获取指定tag的代码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用git获取指定tag的代码相关的知识,希望对你有一定的参考价值。

tag是对历史一个提交id的引用,如果理解这句话就明白了
使用git checkout tag即可切换到指定tag,例如:git checkout v0.1.0

切换到tag历史记录会处在分离头指针状态,这个是的修改是很危险的,在切换回主线时如果没有合并,之前的修改提交基本都会丢失,如果需要修改可以尝试git checkout -b branch tag创建一个基于指定tag的分支,例如:git checkout -b tset v0.1.0 这个时候就会在分支上进行开发,之后可以切换到主线合并
参考技术A tag是对历史一个提交id的引用,如果理解这句话就明白了
使用git checkout tag即可切换到指定tag,例如:git checkout v0.1.0

切换到tag历史记录会处在分离头指针状态,这个是的修改是很危险的,在切换回主线时如果没有合并,之前的修改提交基本都会丢失,如果需要修改可以尝试git checkout -b branch tag创建一个基于指定tag的分支,例如:git checkout -b tset v0.1.0 这个时候就会在分支上进行开发,之后可以切换到主线合并
参考技术B tag是对历史一个提交id的引用,如果理解这句话就明白了
使用git checkout tag即可切换到指定tag,例如:git checkout v0.1.0

切换到tag历史记录会处在分离头指针状态,这个是的修改是很危险的,在切换回主线时如果没有合并,之前的修改提交基本都会丢失,如果需要修改可以尝试git checkout -b branch tag创建一个基于指定tag的分支,例如:git checkout -b tset v0.1.0 这个时候就会在分支上进行开发,之后可以切换到主线合并
参考技术C tag是对历史一个提交id的引用,如果理解这句话就明白了
使用git checkout tag即可切换到指定tag,例如:git checkout v0.1.0

切换到tag历史记录会处在分离头指针状态,这个是的修改是很危险的,在切换回主线时如果没有合并,之前的修改提交基本都会丢失,如果需要修改可以尝试git checkout -b branch tag创建一个基于指定tag的分支,例如:git checkout -b tset v0.1.0 这个时候就会在分支上进行开发,之后可以切换到主线合并
参考技术D 其实要取得不同的branch的tag,只需要在相应的分支上打tag就行了。这样的tag就唯一对应了不同的分支。例如,你在master上打了tag为v1,在某个branch上打了tag为v2,则你取出v2代码的时候,自然就是对应的branch分支了。

Jenkins获取git tags代码

配置Jenkins获取git tag代码的方式其实方法很多,目前我使用比较多的主要是通过Git Parameter 来配置动态的获取最新tags代码,主要我们首先需要安装一下Git Parameter Plug-In插件,有时候直接安装会安装失败,那就直接手动安装一下。

下载地址:http://updates.jenkins-ci.org/download/plugins/git-parameter/

1.我们进入我们目标Jenkins任务,选择【参数化构建过程】-》【添加参数】-》【Git Parameter Plug-In】

2.命名Git Parameter 参数的NAME,根据自己喜好来命名,目前我们只是发布Tag代码所以Parameter Type选择Tag,如果你要是发布其他根据自己需求选择,但是方法一致

3.下来我们配置源码管理,其实上一步骤我们把tag自定义为一个参数,所以下来我们在源码管理设置对应的配置,关键是Branches to build,语法是${tag}或$tag,这样构建的时候就会让你选择你需要的tag代码。

4.下来我们把我们的任务保存,此时我们的立即构建变成【Build with Parameters】,然后选择我们需要发布的tag,点击【开始构建】,这样就会发布我们对应的tag代码。

 

 其实有时候我们通过动态的选择来发布我们自己的tag代码便于我们队版本进行管理和恢复,其实也可以结合我们的版本管理一起使用会很方便。

以上是关于如何使用git获取指定tag的代码的主要内容,如果未能解决你的问题,请参考以下文章

git,代码管理,代码追踪

如何用git获取某段时间内的代码

如何将我的 git 分支恢复到指定的提交?

【Git技术专题】如何使用git中的tag进行版本开发控制?

jQuery如何过滤排除指定的元素

git ls-remote --tags:如何获取日期信息?