Tôi đã thử nhiều cách để sao chép một repo bằng jGit (nó hoạt động). Sau đó, tôi viết một số kho lưu trữ trong kho lưu trữ và cố gắng thêm tất cả (một số git add *
, git add -A
hoặc thứ gì đó tương tự) .. nhưng nó không hoạt động. Các tệp đơn giản không được thêm vào vùng dàn dựng.jGit - cách thêm tất cả các tệp vào khu vực dàn dựng
Mã của tôi là như thế này:
FileRepositoryBuilder builder = new FileRepositoryBuilder();
Repository repository = builder.setGitDir(new File(folder))
.readEnvironment().findGitDir().setup().build();
CloneCommand clone = Git.cloneRepository();
clone.setBare(false).setCloneAllBranches(true);
clone.setDirectory(f).setURI("[email protected]:test.git");
try {
clone.call();
} catch (GitAPIException e) {
e.printStackTrace();
}
Files.write("testing it...", new File(folder + "/test2.txt"),
Charsets.UTF_8);
Git g = new Git(repository);
g.add().addFilepattern("*").call();
Tôi đang làm gì sai? Cảm ơn.
ngoại lệ khi cố gì với addFilePattern (""):
Exception in thread "main" org.eclipse.jgit.errors.NoWorkTreeException: Bare Repository has neither a working tree, nor an index
at org.eclipse.jgit.lib.Repository.getIndexFile(Repository.java:850)
at org.eclipse.jgit.dircache.DirCache.lock(DirCache.java:264)
at org.eclipse.jgit.lib.Repository.lockDirCache(Repository.java:906)
at org.eclipse.jgit.api.AddCommand.call(AddCommand.java:138)
at net.ciphersec.git.GitTests.main(GitTests.java:110)
cảm ơn, nhưng tôi có ngoại lệ. Tôi sẽ đặt nó trong câu hỏi – caarlos0
@ caarlos0 câu trả lời chỉnh sửa – VonC
Nhưng tôi sao chép nó như là một kho không trần ... Tôi không undestand những gì tôi phải làm điều đó ... – caarlos0