我已经在Github上提交了对开源项目的更改,并收到了其中一个核心团队成员的代码审查意见.
我想考虑审核评论更新代码,然后重新提交.这样做的最佳工作流程是什么?根据我对git/github的有限知识,我可以做以下任何一项:
将代码更新为新提交,并将初始和更新的提交添加到我的pull请求中.
不知怎的(??)从我的存储库回滚旧的提交,并创建一个包含所有内容的新提交,然后为此提出拉取请求?
git commit有一个修改功能,但我听说你在本地存储库之外推送提交后不应该使用它?在这种情况下,我在我的本地PC上进行了更改并推送到我的项目的github分支.这可以使用'修改'吗?
别的什么?
看起来选项2/3会很好,因为开源项目在他们的历史中只有一个提交将实现一切,但我不知道如何做到这一点.
注意:我不知道这是否会影响答案,但我没有在单独的分支中进行更改,我只是在master之上做了一次提交
我现在已经修复了这个错误,并希望通过1次额外提交重新提交pull请求.有没有办法重新打开拉取请求或更新它,或者我是否必须创建一个新的拉取请求,再次输入描述等?Gitorious有这个功能,我们最近搬到了GitHub.
我通过使用Fork&Edit此文件文件按钮在github上向rails repo 打开了一个pull请求.
现在,在获得有关我的PR的反馈后,我想添加更多提交.所以这就是我结束的事情
$ git clone git@github.com:gaurish/rails.git #my forked repo
$ git rebase -i 785a2e5 #commit hash of my commit using which PR was opened
$ git checkout patch-3 #branch name I had to send my commits under to be shown in that PR
$ git commit -am "Changes done as per feedback"
$ git push origin patch-3
Run Code Online (Sandbox Code Playgroud)
这很好,但似乎是一个非常复杂的工作流程.也许我错了,这里错了?
我的问题是:我这样做是正确的吗?如果没有,那么这样做的正确方法是什么?
我在GitHub上发了一个pull请求.现在,存储库的所有者正在说要将所有提交压缩成一个.
当我键入git rebase -iNotepad打开时,其中包含以下内容:
noop
# Rebase 0b13622..0b13622 onto 0b13622
#
# Commands:
# p, pick = use commit
# r, reword = use commit, but edit the commit message
# e, edit = use commit, but stop for amending
# s, squash = use commit, but meld into previous commit
# f, fixup = like "squash", but discard this commit's log message
# x, exec = run command (the rest of the line) using shell
#
# …Run Code Online (Sandbox Code Playgroud) 我分叉了一个 GitHub 存储库并在我的分叉上进行了一些更改并提交了拉取请求,但原始 GitHub 存储库的所有者要求进行一些更改,他们在拉取请求中要求我进行更改。我认为向我的分叉添加额外的更改会导致它们出现在当前的拉取请求中,但令我惊讶的是我在拉取请求中看不到我的更改。
这是我在生成原始拉取请求后所做的:
git commit -m "these are my suggested changes in pull request"git push我可以在自己的 fork 上看到更改,但我不明白为什么在拉取请求中看不到任何更改。
有谁知道我需要做什么才能在当前拉取请求中显示我的更改?
我真的很感激你的帮助。