I playing around JGit, I could successfully remove a remote from some repository ( git remote rm origin
), how can I do a git remote add origin http://github.com/user/repo
?
To remove I do the following:
StoredConfig config = git.getRepository().getConfig();
config.unsetSection("remote", "origin");
config.save();
But there's no a option like #setSection(String, String)
.
Thanks in advance.
Managed it to work that way:
Git git = new Git(localRepository);
StoredConfig config = git.getRepository().getConfig();
config.setString("remote", "origin", "url", "http://github.com/user/repo");
config.save();
And aparently it works like a boss.
There are classes to add new ones:
RemoteAddCommand remoteAddCommand = git.remoteAdd();
remoteAddCommand.setName("origin");
remoteAddCommand.setUri(new URIish("http://github.com/user/repo"));
remoteAddCommand.call();
There is a RemoteSetUrlCommand
too.
You can direct manipulate remote object with git24j
Repository repo = Repository.open("your-repository");
Remote upstream = Remote.create(repo, "upstream", URI.create("http://github.com/user/repo"));
and of cause you can also do the same thing through git-config APIs:
Config cfg = Config.openOndisk("my-git.config");
cfg.setString("remote.url", "http://github.com/user/repo");
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.