【发布时间】:2013-01-25 16:38:28
【问题描述】:
我有一个 git 存储库,其中我的项目的编译版本在 .gitignore 中被忽略。
当我发布项目的新版本时(将 master 分支标记为版本),我想提交已编译的文件,但随后又恢复为忽略它们。
这可能吗?我想避免每次发布新版本时都提交新版本的 .gitignore。
【问题讨论】:
标签: git
我有一个 git 存储库,其中我的项目的编译版本在 .gitignore 中被忽略。
当我发布项目的新版本时(将 master 分支标记为版本),我想提交已编译的文件,但随后又恢复为忽略它们。
这可能吗?我想避免每次发布新版本时都提交新版本的 .gitignore。
【问题讨论】:
标签: git
当我发布项目的新版本时(将 master 分支标记为版本),我想提交已编译的文件
为什么不呢。
我只是建议不要在同一个参考文献中这样做。
source 版本控制系统将保留您所放入内容的历史,并且二进制文件的差异不大,会很快占用空间。
artifact repository(like Nexus,或other alternatives)更适合这种发布(用于二进制文件或任何类型的生成文件),其想法是您可以很容易从引用中清除旧版本(一个简单的基于平面文件的系统)。
不要忘记在您的版本中包含一个文件文本声明 SHA1 或您的源代码库,以便在您生成所述二进制文件的源的确切版本之间保持链接。
【讨论】:
您可以使用git commit -f file-in-gitignore(也可能是git add -f file-in-gitignore)。一般来说,包含生成的文件是个坏主意,也许只为这些文件打开一个分支,或者将它们分发到其他地方?
【讨论】: