|
23
|
| Nikolai Prokoschenko · 技术社区 · 17 年前 |
|
|
1
20
忘记什么 Perl Best Practices 说。这不是圣经,它只是建议使用rcs关键字,因为在编写时,没有人想到其他的源代码控制系统。您的目标不应该是遵守PBP的特定实现,而是适应 思想 在你自己的情况下。记得读那本书的第一章。 首先,让我们修正您的假设:
我曾经使用rcs关键字将我的模块版本链接到它们的签入或修订号,但我从来没有真正喜欢过。在一个文件准备好成为下一个版本之前,我对它进行了很多提交,我不需要
现在,当我准备发布一个新的发行版时,我只需更改所有模块文件的版本。我用 ppi_version 一次更改所有版本:
我所有的模块文件都是一样的
如果我正致力于从1.23版开始开发新的发行版,我就开始开发1.23_01、1.23_02等版本,但只有当我准备好让人们尝试这些版本时。我在循环开始时更改版本,而不是在循环结束时更改。在下一个版本之前,我所有的提交都已经有了下一个版本。我也会记录下我希望这个循环能完成什么。
当我认为这是一个新周期的开始时,我又碰到了这个版本。当我认为我有一个稳定的版本时,我改变了开发
这样对我来说一切都容易多了。没有任何东西与我决定使用的源代码管理相关联,所以如果我更改了我使用的内容,就不必重做任何事情。 |
|
2
3
当引入不兼容的更改时,我会选择手动转发版本,因为,当然不是每个更改都能证明转发是正确的。
您可能还想签出'
gitattributes
'
|
|
|
3
3
您使用什么来构建Perl模块?
Linux内核和Git项目本身使用的解决方案是替换“++版本+”(或“++项目版本++”,或“@@project\u版本@@”)。
占位符
通过构建系统
在这种情况下,通过makefile。(在C中的文件中,通过定义“project_version”预处理器常量,通过'
这两个git-ans-linux内核都使用 GIT-VERSION-GEN 脚本:
我希望这对你有帮助。 |
|
|
4
0
如果你真的很懒,只是有点乱七八糟的话,你觉得怎么样?
你可以写一个小包装
更新: 我目前并没有自己用这种东西,但我正在认真考虑。 我目前的推理:
效益:
缺点:
|
|
Harry · 如何在编译时获取克隆的git仓库的标签 1 年前 |
|
Ooker · 如何从blob中删除秘密? 1 年前 |
|
|
hasdrubal · git日志图智能分支过滤器 1 年前 |
|
|
J. Doe · 为什么git中没有跟踪git文件? 1 年前 |