在 Azure DevOps 平台中,我的拉取请求具有名为的最后一次提交dbbdc012
,但构建策略验证指向名为的完全不同的提交3fa5v161
在构建管道执行期间,我希望 Azure DevOps 检查我上次发布的提交的拉取请求。
在本地之后git fetch --all我尝试git checkout 3fa5v16175fcd23f5391fe8880cf8d36cc54e257验证这个提交是什么
它引发了以下错误
致命:引用不是树:3fa5v16175fcd23f5391fe8880cf8d36cc54e257
拉取请求构建管道中会发生什么?
每当一位同事发给我一个拉取请求并且我在GitHub上查看它时,提交中的一些文件显示为全新内容,例如1200行删除和1220行添加,其中他实际上只添加了20行.
文件没有重新格式化,眼睛看起来几乎没有变化,但Git显示100%粉红色,然后是100%绿色.
非常感激地接受任何可能导致这种情况的想法.
我使用Visual Studio Online(VSO),几天前VSO团队宣布支持拉取请求.
我想问一下,如果没有来自Visual Studio 2013的拉取请求,是否可以禁止提交?
我的意思是,我想禁止我的团队提交更改,直到他们首先提取请求,以允许存储库所有者接受或拒绝更改.
正如任何普通开发人员所应该的那样,我喜欢手动,繁琐和重复的任务.最近我意识到 - 在众多git repos上创建拉取请求占用了我太多的时间.大多数时候你必须一遍又一遍地遵循几乎所有的步骤:
在某些时候,我开始想知道如果不使用Web客户端我是否可以做到这一切.而且似乎有可能.Stash和Bitbucket有一个api,Github也有一个(虽然它不同 - 第一个使用ssh而后者是http)
现在,这件事可能会简化一些事情,但我觉得它可能会更好.
我使用Emacs(Spacemacs发行版,具体而言).现在我想知道是否有人已经构建了任何与之集成的东西magit,或者我自己可以做到这一点?我的意思是它有多难?脚本应该允许您提交然后推送分支,然后使用给定的默认值创建基于该分支的"开发"的拉取请求.有人做过这样的事吗?
你们可以指点一些elisp利用magit相似功能的插件.也许我能够自己写点东西.
我已经在GIT上挣扎了一段时间,因为它做了一些奇怪的事情。
我有一个初始代码的基本提交。
好的,接下来我创建一个分支来进行编辑,提交和推送:
git checkout -b feature/feature1
git commit -m "added feature1"
git push origin feature/feature1
Run Code Online (Sandbox Code Playgroud)
现在,我对该功能进行拉取请求。
之后,我更改分支并更新例如:
git checkout -b chore/update-framework
git commit -m "updated framework"
git push origin chore/update-framework
Run Code Online (Sandbox Code Playgroud)
在这一点上,当我尝试第二次推送的请求时,它包含了所有功能的第一次提交。因此,该提交中所有更改的文件都在新的请求中,而旧的请求仅包含功能文件。
我究竟做错了什么?
我们已经分叉了一个Github项目,并且正在对其进行更改。对于每个任务,我创建一个单独的分支,然后将其合并到masterin分支中。
所以现在我要master进行的工作比master原始回购协议提前20次。
该项目的规则是create pull request for each task。
虽然,我知道该如何做,但是git我不确定该过程。
我不确定是如何为第二次提交中的任务1创建拉请求,然后为第五次提交中的任务2创建拉请求,等等。
我是否犯了一个错误,现在只能同时为多个修复程序创建提取请求?
我应该这样做吗?
完成任务
与师傅合并
创建从fork母版到原始母版的拉取请求?
编辑
@OliverCharlesworth您所建议的是我过去的工作方式,但这带来了许多问题。由于我先修复了一些任务,然后为每个任务创建了PR,所以与主服务器产生了许多冲突(徒劳)。因此,每次创建PR时,都会收到一条消息,提示它无法自动合并,但是我必须先解决冲突。然后对于90%的PR,我不得不处理合并,仅在合并时就浪费了几个小时。
这就是我认为自己做错了的原因。
因此,当我切换到规则“修复1任务然后合并到主服务器”时,我避免了所有这些愚蠢的冲突,并将我们的任务保存下来。
既然您说“从分支机构进行PR”是正确的做法,那么如何避免愚蠢的冲突并避免在愚蠢的合并过程中浪费几个小时呢?
注意:当我说“傻”时,这意味着所有冲突都将解决为必须修复的同一段代码。当我遵循新规则时,这将永远不会发生。愚蠢的意思是“没有充分理由就浪费了很多时间”。
我正在运行一个本地git服务器,我只是想知道,有没有办法看到开发人员提出的所有拉取请求?与Github或Bitbucket类似,但在命令行中.
谢谢
所以...我当前的项目包括制作一个脚本,它将在我们的Stash服务器(又名BitBucket服务器)上以编程方式配置存储库.这包括为每个存储库设置默认审阅者.是否有REST API?
有一个公共github存储库,我想创建一个拉取请求.我在我的本地机器上有一个项目,我需要签入并发送给他们进行审查.我尝试了以下并失败了
git clone public repo
# create new branch
# add code in the branch
git add/commit changes to this new branch
git push
Run Code Online (Sandbox Code Playgroud)
当我执行git push时,我输入了我的github帐户凭据,但它失败了.我知道这应该失败,因为我无法访问他们的回购,但我做错了什么?我需要创建某种帐户吗?