远程更改后,如何将本地工作目录带到任何git修订版,无论其分支如何?

桑迪潘·纳特(Sandeepan Nath)

背景

我正在研究一个phing构建脚本,该脚本将输入作为目标版本,生产代码库需要采用该版本。我正在单独的暂存器目录中准备相同的内容,然后覆盖生产代码库。

当前逻辑

  • 在每个构建过程中,我只是清空暂存器,并在其中复制整个git存储库的新副本。
  • 进行所需的修订-

    git reset --hard $ {target.git_version}

我确信可以做一些更有效的事情。我在想-

  • https://stackoverflow.com/a/1419637/351903中所述,找出哪一个包含所需的提交(已尝试但无法使其正常工作git branch -r --contains <commit>-好像我在丢失有关其概念的东西)。

  • 找到分支后,仅克隆该特定分支。

然后我想到了-

  • 仅将所有分支名称都放入我的本地存储库中(如果可能的话,这是有道理的)。

  • 然后git branch --contains <commit>

还想到了-

  • 遍历所有分支名称并检查其是否包含提交。
吸血鬼

只需签出您要拥有的提交即可git checkout ${target.git_version}
为什么擦拭和重新克隆一如既往,只是fetch然后checkout就足够了。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何将更改从某个修订版本复制/重新应用到工作/主修订版本?

如何将某些修订版从一个分支移动到另一个分支?

git,如何将本地分支推送到特定的远程

如何找出特定的Subversion修订版属于哪个分支?

如何将现有的非空目录转换为Git工作目录并将文件推送到远程分支

如何获取git存储库中各修订版之间已更改文件的列表?

Git:如何将工作目录与分支的特定提交同步

如何将笔记的多个修订版合并为一个版本?

如何基于Eclipse中的修订版导入git项目

如何将更改从本地git repo应用于工作目录?

如何将远程主分支更改为本地开发分支?

如何将修订后的提交推送到远程Git存储库?

Git:如何将本地分支合并到远程主分支

如何将本地git分支与其远程分支进行比较?

如何将本地Git分支推送到远程的master分支?

如何在Android Studio 2.0中将特定的svn修订版从分支合并到主干

如何使用alembic运行修订版?

Git:从远程服务器获取特定的修订版

我的本地工作副本基于哪个修订版(SVN)

如何将git分支与远程分支同步?

如何将远程tfs分支合并到git分支?

如何将新的本地分支推送到远程Git存储库并进行跟踪?

删除工作目录后如何删除git工作树分支?

Git推送远程工作,但看不到任何更改

如何避免将更改从新分支带到主分支

如何从SVN(Subversion)存储库目录和文件中提取当前修订版

通过给定的Git远程跟踪分支名称,如何找到哪个本地分支对其进行跟踪?

当使用svn repo的git mirror时,如何找到svn修订版的git hash?

删除远程分支后,如何删除本地远程跟踪分支?