2
我想從java推入一個項目到gitlab。我克隆它成功,但我不能推動更改(添加更多的文件或添加更多的信息到現有的文件。)。該代碼不包含任何錯誤,但不會在gitlab中更新。如何從java api推到gitlab
這裏是我的代碼
File localPath = File.createTempFile("TestGitRepository", "");
if(!localPath.delete()) {
throw new IOException("Could not delete temporary file " +
localPath);
}
Git git = Git.cloneRepository()
.setURI(REMOTE_URL)
.setDirectory(localPath)
.setCredentialsProvider(cp)
.call();
System.out.println("Cloning from " + REMOTE_URL + " to " + localPath);
// Git git=Git.open(dir);
File file = new File(git.getRepository().getWorkTree(), "file" + new Object().hashCode());
System.out.println("hi");
file.createNewFile();
git.add().addFilepattern(file.getName()).call();
git.commit().setMessage("Add file " + file.getName()).call();
git.push() .setCredentialsProvider(cp) .call();
System.out.println("Pushed from repository: " + localPath + " to remote repository at " + REMOTE_URL);
謝謝。我會嘗試這段代碼 – Ash
@Ash不要忘了,爲了您的其他問題,請閱讀https://stackoverflow.com/help/accepted-answer – VonC
現在,在添加該代碼行後,它在gitlab中顯示的更新數少於分鐘前。但是如何編輯一個克隆的文件,然後將它推入gitlab。因爲在我的代碼中它是克隆,並立即推送,所以我無法編輯。我的用例是我想克隆它,並做一些改變,並推回到混帳。我嘗試了一種單獨的克隆方法,但我不知道如何使用push方法調用克隆的文件夾。有什麼辦法可以解決這個問題嗎? – Ash