gpt4 book ai didi

java - JGit推送不更新文件

转载 作者:行者123 更新时间:2023-12-01 23:47:18 25 4
gpt4 key购买 nike

我已经搜索这个主题几天了,但找不到解决方案。我也看过这个主题:StackOverflow How to push JGit

问题是我正在做一个应该是 github 的程序,只有非常基本的功能,但是当我执行推送提交消息时工作正常,但如果我更改某些文件的内容,它不会在远程更新存储库。

我用它来提交:

 Repository localRepo = new FileRepository(repository + "\\.git");
Git git = new Git(localRepo);
git.commit().setCommitter(txtCommiter.getText(),"").setMessage(txtCommit.getText()).call();

我用它来推送:

Repository localRepo = new FileRepository(this.repository + "\\.git");
Git git = new Git(localRepo);
PushCommand push = git.push();
UsernamePasswordCredentialsProvider user = new UsernamePasswordCredentialsProvider(this.userName, this.pwd);
push.setCredentialsProvider(user);
push.setRemote(this.remote);
push.call();

有人可以帮我解决这个问题吗?

最佳答案

使用 git show COMMIT_ID 查看您正在创建的提交是否正确。

如果没有,问题是您没有包含要使用 CommitCommand 提交的文件。以下对应于git commit -a -m msg:

 git.commit().setAll(true).setMessage(msg).call();

您还可以使用 setOnly(path) 在提交中仅包含某些文件或目录。对于多个路径多次调用它。

另一种选择是,如果您首先将文件添加到索引以将其暂存以进行提交(那么您不必在提交中指定任何文件):

git.add().addFilepattern(dirA).addFilepattern(fileB).call();

关于java - JGit推送不更新文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16834151/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com