我正在使用Jgit api。我可以使用cloneRepository方法在git远程位置创建文件。
同样,我可以使用addCommand添加文件。现在的要求是创建文件夹或使用本地文件更新现有文件夹,并将其提交,提交到远程存储库 - https://github.com。 我尝试修改我们用于创建文件的相同代码,但它无法正常工作。
我怎样才能做到这一点? 用于添加文件的代码:
File file = new File(Trial.localPath + "\\" + fileName);
file.createNewFile();
UsernamePasswordCredentialsProvider upc = new UsernamePasswordCredentialsProvider(
userName, password);
git = Git.cloneRepository().setURI(remotePath).setDirectory(puppetDirFile).setCredentialsProvider(upc).call();
git.add().addFilepattern(fileName).call();
git.commit().setMessage("Added "+ fileName).call();
PushCommand pc = git.push();
pc.setCredentialsProvider(upc).setForce(true).setPushAll();
pc.call();
git.getRepository().close();
已修改为添加文件夹:
File file = new File(Trial.localPath+"\\ProjectA");
if (!file.exists()) {
if (file.mkdir()) {
System.out.println("Directory is created!");
}
}
git.add().addFilepattern("projectA").call();
git.commit().setMessage("Added "+ "ProjectA").call();
然后按照上面的代码推动休息。
答案 0 :(得分:0)
Git不支持向git添加空文件夹。 所以即使你添加了它,它也不会在你添加文件之前在Git索引中。 查看相关的堆栈溢出问题。 How can I add an empty directory to a Git repository?