标记 git 中的特定文件
Tag specific files in git
我是新手 git,我想标记分支中的特定文件。
例子:我有
file1
、file2
、file3
、file4
in master
并将这 4 个文件标记为 V1.0
用于我的初始版本
现在我在下一个版本中添加了file5
并合并到master
。
我必须在新标签中仅将 file5
标记为 V2.0
而不是所有以前的文件(file1
、file2
、file3
、file4
)。
这可以在 git 中完成吗?
任何人都可以帮助我如何在 git 或任何其他可以更新我的项目的每个版本的解决方案中做到这一点?
Can this can be done in git?
不,考虑到标签代表(通常,见下文)提交(这是对 all 回购内容的引用,而不是文件或增量)
图片来自Git Plumbing
您可以 list the files which have changed between two tags 不过:
git diff --name-only v1.0 v2.0
要仅列出 new 个文件,请添加 --diff-filter=A
:
git diff --name-only --diff-filter=A v1.0 v2.0
那就是 return 'f5
'。
如“How to Tag a single file in GIT”中所述,您可以在技术上标记单个文件或单个树:
> git ls-tree HEAD
040000 tree 2c186ad49fa24695512df5e41cb5e6f2d33c119b bar
100644 blob 409940768f2a684935a7d15a29f96e82c487f439 foo.txt
> git tag my-bar-tree 2c186ad49fa24695512df5e41cb5e6f2d33c119b
> git tag my-foo-file 409940768f2a684935a7d15a29f96e82c487f439
但是任何非提交标签都不会被用作常规提交标签(例如你不能签出它)。
那些非提交标签的可能用法:“”。
我是新手 git,我想标记分支中的特定文件。
例子:我有
file1
、file2
、file3
、file4
in master
并将这 4 个文件标记为 V1.0
用于我的初始版本
现在我在下一个版本中添加了file5
并合并到master
。
我必须在新标签中仅将 file5
标记为 V2.0
而不是所有以前的文件(file1
、file2
、file3
、file4
)。
这可以在 git 中完成吗?
任何人都可以帮助我如何在 git 或任何其他可以更新我的项目的每个版本的解决方案中做到这一点?
Can this can be done in git?
不,考虑到标签代表(通常,见下文)提交(这是对 all 回购内容的引用,而不是文件或增量)
图片来自Git Plumbing
您可以 list the files which have changed between two tags 不过:
git diff --name-only v1.0 v2.0
要仅列出 new 个文件,请添加 --diff-filter=A
:
git diff --name-only --diff-filter=A v1.0 v2.0
那就是 return 'f5
'。
如“How to Tag a single file in GIT”中所述,您可以在技术上标记单个文件或单个树:
> git ls-tree HEAD
040000 tree 2c186ad49fa24695512df5e41cb5e6f2d33c119b bar
100644 blob 409940768f2a684935a7d15a29f96e82c487f439 foo.txt
> git tag my-bar-tree 2c186ad49fa24695512df5e41cb5e6f2d33c119b
> git tag my-foo-file 409940768f2a684935a7d15a29f96e82c487f439
但是任何非提交标签都不会被用作常规提交标签(例如你不能签出它)。
那些非提交标签的可能用法:“