Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何标记git存储库中的单个文件夹_Git - Fatal编程技术网

如何标记git存储库中的单个文件夹

如何标记git存储库中的单个文件夹,git,Git,我们可以标记git存储库中的单个文件夹吗 我们有一个包含不同文件夹的git存储库,我们不想标记整个存储库。我们只想标记git存储库中的一个文件夹 使用不同的存储库而不是单个存储库是否可能或更好?否您不能将标记与git存储库中的文件夹相关联 这是因为每个标记都与特定的提交关联 因此,每次提交都是指包含这两个文件夹的整个存储库 如果您的每个文件夹都彼此无关,那么您肯定应该有两个独立的存储库 让我们想象一下这个时间线: * 4bde21c 5m ago, Fix spelling (master)

我们可以标记git存储库中的单个文件夹吗

我们有一个包含不同文件夹的git存储库,我们不想标记整个存储库。我们只想标记git存储库中的一个文件夹

使用不同的存储库而不是单个存储库是否可能或更好?

否您不能将标记与git存储库中的文件夹相关联

这是因为每个标记都与特定的提交关联

因此,每次提交都是指包含这两个文件夹的整个存储库

如果您的每个文件夹都彼此无关,那么您肯定应该有两个独立的存储库

让我们想象一下这个时间线:

 * 4bde21c 5m ago, Fix spelling (master)
 * 4bde21c 10h ago, Fix foo (v1.0-foo)
 * 7cdeba1 3 days ago, Fix bar (v1.0-bar)
 * 3cd4aa1 10 days ago, Create bar
 * 21a57d2 1 month ago, Create foo
标记v1.0-foo和v1.0-bar只是对提交的引用:

 v1.0-foo -> 4bde21c
 v1.0-bar -> 7cdeba1 

<> p> >您如何看待标签库的版本在标签v1.0 fo?< /p> 不确定您为什么想要它,所以我只给出一些提示。 Git存储库中包含跟踪文件的文件夹有自己的修订版,存储为树对象。对象记录其文件和子文件夹的名称以及它们自己的对象哈希。但对象不存储自己的路径,路径存储在其父文件夹的树对象中。如果它是存储库的根文件夹,则根本不存储其路径。因为克隆或初始化时,它可以是任何名称

假设文件夹在存储库中的路径为./foo。您可以运行git ls tree-foo或git rev parse:foo来查看foo的树散列。您可以通过git标记对其进行标记,也可以通过git标记foo不知道其哈希

使用标记,您可以推送或获取相关对象,或提取实际文件和子文件夹,或使用管道命令对其进行操作


正如我们可以使用的:为了描述文件夹的路径和内容,如果您知道提交和路径,就不必创建额外的标记。

根据我的经验,最好有不同的存储库。您可以添加一个.gitignore文件,告诉git忽略内容,这样您就可以在存储库中的每个其他文件夹的.gitignore中添加行,但我认为,如果您只将git存储库放在您感兴趣跟踪的单个文件夹中,事情会变得更简单。ElpieKay的答案是正确的。。。而且对您没有用处,因为您对Git不感兴趣,而是对GitHub感兴趣。这就是为什么提出好问题很重要的原因!:-对不起,我提到了github。我使用github检查标记是否已创建。我已经创建了标签,现在我只想克隆标签,而不是克隆整个存储库。有没有办法克隆这个标签?这能回答你的问题吗?我已经执行了以下命令来标记git存储库中的单个文件夹。1git ls树头2 git标记3 git推送原点-标记。标记已经创建,但当我单击github上的标记时,它显示的是错误页面。希望显示该文件夹内容页。我能在这方面得到帮助吗?@AnRedd恐怕Github不支持显示树对象。标记非提交对象是非常罕见的。我所知道的唯一情况是标记一个GPG公钥blob,它用于验证已签名的提交或标记。