2012-07-04 23 views
0

我想从过去的提交中执行一个工件的mvn release;有人向同一个SNAPSHOT添加了多个提交,我希望将这些提交排除并移至下一个版本。鉴于以下git log输出:Maven与Git:从任意提交释放而不是HEAD

commit ea05 
Author: Y 

commit 921d 
Author: Y 

commit 530c 
Author: Y 

commit 64e9 
Author: X 

我想行家使用64e9的释放,而不是ea05

我试图做git co 64e9(分离的HEAD),mvn release:prepare(工作),然后mvn release:perform但它挂起产生以下的输出:

[INFO] Building ABC 
[INFO] task-segment: [release:perform] (aggregator-style) 
[INFO] ------------------------------------------------------------------------ 
[INFO] [release:perform {execution: default-cli}] 
[INFO] Checking out the project to perform the release ... 
[INFO] Executing: /bin/sh -c cd /home/ABC/target && git clone ssh://repo/ABC.git /home/ABC/target/checkout 
[INFO] Working directory: /home/ABC/target 
[INFO] Executing: /bin/sh -c cd /home/ABC/target/checkout && git pull ssh://repo/ABC.git tag ABC-1.6 
[INFO] Working directory: /home/ABC/target/checkout 
(...hanged) 
+1

我会建议[撤消主服务器上的变化,比做的释放。] [1] [1]:http://stackoverflow.com/questions/1178553/how-可以-I-移动-A-设置的-commits的从 - 主设备到一个-单独分支 – khmarbaise

回答

0

@khmarbaise感谢灵感,这里就是我最终解决问题:

  1. 存储在单独的支路中的电流状态
  2. git reset --hard主站到期望的提交
  3. git push --force origin避免“你的分支是后面的原籍/主“被N提交,并且可以是快进“。
  4. 使用Maven的发布插件发布
  5. 将另一个分支中的提交“stashed”重新应用到下一个开发版本。
相关问题