Добавляйте только новые файлы, используя jgit - PullRequest
0 голосов
/ 07 октября 2019

Я учусь вставлять код в git, используя jgit. Я могу отправить все файлы в git, но я хочу только добавить новые файлы или обновить изменения в git. Пожалуйста, предложите:

Ниже мой код:

Git git = Git.open(new File(repoPath)); // connect to github
// I want some code which recognizes the new additions or finds the files changed

git.add().addFilepattern(".").call(); // Want to add only the delta
git.commit().setMessage("commit - 1").call(); 
git.push().setCredentialsProvider(cp).call(); 

Ответы [ 2 ]

0 голосов
/ 07 октября 2019

Неизмененные файлы никогда не добавляются в индекс, они уже содержатся в индексе. Следовательно, используйте шаблон файла ".", если вы хотите добавить все новые и измененные файлы в индекс.

Переменная addAll, на которую вы ссылаетесь, используется для управления проверкой всех файлов врабочий каталог или только те, которые содержатся в списке filepatterns.

0 голосов
/ 07 октября 2019

Понял !!!

Status status = git.status().call();
System.out.println("Added: " + status.getAdded());
System.out.println("Changed: " + status.getChanged());
System.out.println("Conflicting: " + status.getConflicting());
System.out.println("ConflictingStageState: " + status.getConflictingStageState());
System.out.println("IgnoredNotInIndex: " + status.getIgnoredNotInIndex());
System.out.println("Missing: " + status.getMissing());
System.out.println("Modified: " + status.getModified());
System.out.println("Removed: " + status.getRemoved());
System.out.println("Untracked: " + status.getUntracked());
System.out.println("UntrackedFolders: " + status.getUntrackedFolders());
...