我正在尝试JGit,对于像
这样的项目 sample--
|-- src
|---sampletest
|------Test.txt
我在JGit中通过repo.create()
创建了这个git项目,我可以在示例中找到.git。但每当我修改Test.txt。它没有在终端的git状态中显示。
我无法找到答案。
还有其他可以使用的Java API吗?
修改
这个项目最初没有.git。 我做了,
repository = new FileRepository(<somepath>/sample/+".git");
git = new Git(repository);
这会在内部示例中创建一个.git。 来自终端的Git状态:
C:\Users\msrivastava\Documents\GitHub\sample> git status
# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# src/
nothing added to commit but untracked files present (use "git add" to track)
所以在repo.create()之后,它不会添加或提交样本/ src / *
毕竟我加载了示例项目git repo。并使用文件模式“src / *”和“src / sampletest / Test.txt”执行添加
repository = new FileRepository(<somepath>/sample/+".git");
git = new Git(repository);
git.add().addFilePattern("src/*").call();
另外
git.add().addFilePattern("src/sampletest/Text.txt").call();
此后终端的Git状态:
C:\Users\msrivastava\Documents\GitHub\sample [master +1 ~0 -0 !]> git status
# On branch master
#
# Initial commit
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# src/
nothing added to commit but untracked files present (use "git add" to track)
答案 0 :(得分:0)
JGit中git status
的对应部分是StatusCommand
。它可以从 Git命令工厂获得并像这样调用:
Repository repo = ...
Git git = Git.wrap( repo );
Status status = git.status().call();
Status
的getter返回添加,删除,修改,跟踪等文件的路径。