git 替换PR中出现的所有x

mdfafbf1  于 5个月前  发布在  Git
关注(0)|答案(2)|浏览(48)

所以我在GitHub上做了一个PR,并且已经审查过将字段从status更改为result。我想在PR* 中搜索所有出现status * 的地方,因为status在代码库中到处都是。我孵化了以下主计划:

  1. git diff my-branch origin/master > patch.txt
    1.改变那里所有的事件
    1.创建一个新的分支my-branch-2关闭主
    1.新分支上的git apply patch.txtmy-branch-2
  2. git commit; git push
  3. git merge my-branch-2转换为my-branch
    不幸的是,它在第4步失败,不存在的文件error: patch/to/file.py: No such file or directory或,只是不工作error: path/to/file2.py: patch does not apply
    做这个重命名最聪明的方法是什么?
w6lpcovy

w6lpcovy1#

我宁愿简单地使用推送的分支作为PR, checkout 它,更改文本,进行新的提交和推送。
如果该分支不可用,我会checkout that pull request locally,然后执行上述步骤:简单的搜索和替换,提交和推送,以更新GitHub PR。

8e2ybdfx

8e2ybdfx2#

我知道这是一个非常古老的问题,但可能仍然与其他人有关。

提示:确保创建备份以防出错

下面的步骤对我很有效(我只有一次提交)
1.第一个月
1.使用任何标准编辑器或sed进行所有更改

  1. git reset --hard HEAD~1这将删除提交!
  2. git apply patch.txt
    1.添加并提交更改

第三步到第五步的交替

不需要在第3步中删除提交,可以保留原始补丁(patch.txt)并为所有更改创建一个modified_patch.txt,然后执行以下操作:

  1. git apply --reverse patch.txt
  2. git apply modified_patch.txt
    顺便说一下,我认为你的步骤的问题可能是因为:
  3. masterorigin/master在不同的提交导致补丁失败。
  4. git apply -v patch.txt可能会提供更多信息

相关问题