gitclone以获取在特定标记后添加/修改的文件



我在创建数据库包时有一个要求。我们的数据库更改是以git为单位的。我们用版本标记git-reo。例如。branch=开发file1-没有标记,file2-没有标记,file3标记了v1.2,file4标记v1.1,

我只想克隆尚未标记的文件。即file1和file2
file3和file4不应克隆到我的本地文件夹。请帮忙我需要创建不在生产中的数据库包。生产中已经更新了upv1.2文件。我无法再次发送。所以只想得到v1.2 后更改的文件

感谢您的回复。

  1. 我首先使用getrevision=";git log-3--漂亮=格式:"%h〃;tag_v.1…头
  2. 然后在getreview上循环
  3. 然后获取所有尚未标记的文件名files=$(git log tag_v.1.HEAD--漂亮="格式:"--仅限名称$rev(
  4. 然后应用循环验证所有现有文件
  5. 删除所有不在$files中的文件更新或修改天气并不重要。如果它存在于tagv1之后,则包括文件

这将解决我的问题

Git不是关于文件的。Git是关于提交的。每次提交都是每个文件的完整存档。

git clone命令创建一个新的空存储库,然后运行git fetch以使用提交来填充它。您需要获得有问题的提交,然后对这些提交进行自己的处理。也就是说,您将获得其哈希ID由标记给定的提交,并查看该提交中的所有文件。然后,您将查看所有稍后提交的文件,并查看哪些文件相同,哪些文件不同。

你需要定义你所说的";由于某些修订而添加/修改";,因为可以用六个文件进行commit#17:f1f2f3f4f5f6,然后通过删除f3只用五个文件进行ommit#18,然后再放回f3,用六个文件进行commit#19,与#17中出现的方式保持不变。然后提交#20可能会更改f4,但提交#21会将其更改回来。文件f3f4是添加或修改的,还是相同?

一旦你定义了的意思,你就会知道——或者至少能够学习——如何找出哪些文件符合你的标准。

相关内容

  • 没有找到相关文章

最新更新