JGit'te nasıl birleştirilir?JGit'te nasıl birleştirilir?
master
'u foo
dalı ile birleştirmek istediğimi varsayalım, bunu nasıl yaparım?
JGit'te nasıl birleştirilir?JGit'te nasıl birleştirilir?
master
'u foo
dalı ile birleştirmek istediğimi varsayalım, bunu nasıl yaparım?
Bir CheckoutCommand
sonra MergeCommand
(pakette org.eclipse.jgit.api) kullanabilir, birleştirmek için. mükemmel olmayabilir bu yüzden kod deneyin vermedi
Git git = ... // you get it through a CloneCommand, InitCommand
// or through the file system
CheckoutCommand coCmd = git.checkout();
// Commands are part of the api module, which include git-like calls
coCmd.setName("master");
coCmd.setCreateBranch(false); // probably not needed, just to make sure
coCmd.call(); // switch to "master" branch
MergeCommand mgCmd = git.merge();
mgCmd.include("foo"); // "foo" is considered as a Ref to a branch
MergeResult res = mgCmd.call(); // actually do the merge
if (res.getMergeStatus().equals(MergeResult.MergeStatus.CONFLICTING)){
System.out.println(res.getConflicts().toString());
// inform the user he has to handle the conflicts
}
, ama sadece bir başlangıç sağlamak için var: gerçekten Jgit örnekler olmadığı için, bir örnek sunmak için. Ve ithalatı dahil etmedim. javadoc
Bunları, örneğin dahil JGit repository çeşitli test classes for Merge bulacaksınız SimpleMergeTest
Merger ourMerger = MergeStrategy.OURS.newMerger(db);
boolean merge = ourMerger.merge(new ObjectId[] { db.resolve("a"), db.resolve("c") });
assertTrue(merge);
JGit dayalı denemeden bir çok 2010 yılından bu yana git çözmek birleştirme stratejisi tam gaz Java uygulaması ihtiyacınız varsa örnekler karşılık gelen JGit test durumlarda bakıp Eğit nasıl bir göz JGit ile gelmiştir ima Gelişmekte MergeCommand kullanarak, org.eclipse.egit.core.op.MergeOperation
sınıfına bakın.
Github'a verdiğiniz aynı bağlantı, birleştirmenin eksik bir özellik olduğunu belirtir. Ne var ne yok? – Tower
@rFactor Tamamen yerel bir java uygulaması yerine, yalnızca git eklenti komutunun etrafında bir sarıcı sağlanmışsa bu durum söz konusu olabilir, ancak artık böyle görünmüyor. – VonC
bunu doğrulayabilir misiniz? Ben dev bir makinede değilim, bu noktada fazla bir şey anlayamıyorum ya da bir noktada kontrol edip bulgularımı buraya gönderiyorum. – Tower