这是发生的情况(我想这就是我的问题的出现方式,但不是 100% 确定):
revert按钮恢复了它merge按钮)为什么会发生这样的事?现在怎么可能,从进行 PR 的分叉中,它说There isn't anything to compare虽然这些提交不在远程存储库的原始分支上。
最后,我怎样才能恢复这些提交?
编辑:根据要求,这是我的有趣部分git log:
* | | 25f28fb Merge branch 'FooUser-develop' into develop
|\ \ \
| * \ \ 73768b7 Merge branch 'develop' of https://github.com/FooUser/mainRepo into FooUser-develop
| |\ \ \
| | * | | 2e61235 Invert adresses
* | | | | d522031 Merge branch 'develop' of https://github.com/mainUser/mainRepo into develop …Run Code Online (Sandbox Code Playgroud) 我创建了一个拉取请求并将其分配给我的一位同事(“Brian”)进行审查。此后他告诉我他没空,所以我将其重新分配给了另一位同事(“Geoff”)。我现在有一个拉取请求,其中列出了 3 位参与者:我自己、Brian 和 Geoff。
如何从参与者列表中删除原始受让人 (Brian)?
在一次提交中,我更改了多个文件夹中的多个文件,例如folderA、folderB、 和folderC。更改中folderA只是添加了注释和一些用于打印中间结果的代码,这符合我自己的理解。folderB,folderC是新创建的,我在那里为该项目编写了一些代码,现在我只想发送 和 的拉取请求folderB,folderC你会怎么做?
从 github 网页或命令行工作都会有所帮助。
我的组织正在从 SVN 过渡到 Git(托管在 GitHub 上),我们基本上采用了 git-flow 分支模型。
我们一直在使用拉取请求在分支之间进行合并。我们使用 GitHub Web 界面来处理合并并关闭请求。
拉取请求与 --no-ff 合并。因此,合并提交将发生在目标分支中。
所以......我们经常从开发合并到主控- 所以合并后发生的情况是开发分支将既落后(由于合并提交不在主控中)又领先(由于开发中正在完成新工作) 。
经过多次迭代,我们最终得到“develop 分支落后 23 次提交,领先 master 7 次提交”——这看起来很荒谬。我们不应该担心这个吗?我们应该手动合并而不是通过 GitHuib Web 界面吗?
我有一个公共 github 存储库,并希望禁止其他用户合并到 master 分支。他们应该只能创建其他分支并创建拉取请求。我是唯一接受并合并拉取请求的人。
这可以通过 GitHub 实现吗?如果可以,我该如何设置?
亲切的问候
我实际上正在为 Material Design 代码存储库之一做出贡献。计划在下一个版本中提供一组特定的功能。
我目前已经实现了一项功能并创建了一个 PR(比如 PR1),并推送了该功能的 3 次提交。它们在PR1下可见。PR1 仍处于OPEN状态。
我已经通过 8 次提交实现了某些其他功能。但是,当我单击“创建新 PR”按钮时,我看到的只是我的PR1。
这是当我点击“创建新 PR”时发生的情况-
问题是——
我该怎么做?这是一个长期存在的问题。现在我必须问。
为什么要新公关?这是因为,审查变得更容易,并且具有 1 PR 的每个功能将是更清晰的方法。
我已经经历过 - Question1、Question2、Question3等等......
没有太多帮助。只是我用提交向存储库发送垃圾邮件,然后强制重置头以将其删除:(
我慢慢了解到,除了经典的命令行工具之外,大多数 git 客户端都不允许在合并之前从分叉存储库中签出拉取请求以进行本地审查。
尽管如此,很难确定客户端是否缺乏拉取请求结帐功能。这让我想到了 TortoiseGit。
TortoiseGit 是否支持从其他用户的分叉存储库中检出拉取请求?
如何做到这一点?
注意:我的意思不是正常的分支结账流程或创建拉取请求。我的意思是检查来自另一个用户的分叉存储库的拉取请求。
我的企业有一个 Git 存储库。要进行更改,我必须在分叉存储库中进行更改,然后发出拉取请求。
我主要使用 RStudio,因此我启用了它与 Git 的集成。我可以对我的分叉存储库进行更改,然后推送、拉取、同步等。问题是我仍然需要登录 GitHub 并为我的分叉存储库发出拉取请求的额外步骤。RStudio 有办法做到这一点吗?
当我将更改连同通常的统计信息一起推送到 Bitbucket 服务器时,服务器会以“remote:”开头的几行进行响应。其中一行包含一个 URL,用于减少推送分支的差异并创建拉取请求。我目前突出显示 URL 并将其复制/粘贴到浏览器窗口中以创建我的拉取请求,但我希望加快该过程。有没有办法提取 URL 并将其传递给“clip”以将其作为 git 别名的一部分保存到剪贴板?
我还考虑过尝试使用当前分支名称和远程 URL 的组合来重新创建 URL,但是远程 URL 和拉取请求 URL 之间存在一些差异,因此提取 URL 似乎比重新创建更容易创造它。
Counting objects: 47, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (45/45), done.
Writing objects: 100% (47/47), 12.81 KiB | 0 bytes/s, done.
Total 47 (delta 40), reused 3 (delta 2)
remote:
remote: Create pull request for feature/somefeature:
remote: https://code.ourbitbucketserver.com/projects/myteam/repos/somerepo/compare/commits?sourceBranch=refs/heads/feature/somefeature
remote:
To https://code.ourbitbucketserver.com/scm/myteam/somerepo.git
* [new branch] feature/somefeature -> feature/somefeature
Branch feature/somefeature set up to track remote branch …Run Code Online (Sandbox Code Playgroud) 有很多关于如何格式化 git 提交消息的指南(像这样)。几乎所有的人都指出,信息应该是祈使语气,而不是过去时态。关于这一点有一个很好的论据:
“每当代表您创建提交时,Git 本身都会使用命令式。例如,使用时创建的默认消息为
git merge:合并分支‘myfeature’ ”
然后 VSTS 中拉取请求的默认提交消息如下:
“合并d PR:XYZ”
为什么?...
pull-request ×10
git ×8
github ×6
azure-devops ×1
bitbucket ×1
git-checkout ×1
git-commit ×1
git-merge ×1
git-pull ×1
git-push ×1
r ×1
revert ×1
rstudio ×1
tortoisegit ×1