Created
April 25, 2012 06:27
-
-
Save SaitoWu/2487157 to your computer and use it in GitHub Desktop.
jgit example
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Main{ | |
public static void main(String args[]){ | |
String name = "Saito"; | |
String password = "a1c2bf1890eb"; | |
String url = "http://localhost:9292/Saito/simba.git"; | |
// credentials | |
CredentialsProvider cp = new UsernamePasswordCredentialsProvider(name, password); | |
// clone | |
File dir = new File("/tmp/abc"); | |
CloneCommand cc = new CloneCommand() | |
.setCredentialsProvider(cp) | |
.setDirectory(dir) | |
.setURI(url); | |
Git git = cc.call(); | |
// add | |
AddCommand ac = git.add(); | |
ac.addFilepattern("."); | |
try { | |
ac.call(); | |
} catch (NoFilepatternException e) { | |
e.printStackTrace(); | |
} | |
// commit | |
CommitCommand commit = git.commit(); | |
commit.setCommitter("TMall", "[email protected]") | |
.setMessage("push war"); | |
try { | |
commit.call(); | |
} catch (NoHeadException e) { | |
e.printStackTrace(); | |
} catch (NoMessageException e) { | |
e.printStackTrace(); | |
} catch (UnmergedPathException e) { | |
e.printStackTrace(); | |
} catch (ConcurrentRefUpdateException e) { | |
e.printStackTrace(); | |
} catch (WrongRepositoryStateException e) { | |
e.printStackTrace(); | |
} | |
// push | |
PushCommand pc = git.push(); | |
pc.setCredentialsProvider(cp) | |
.setForce(true) | |
.setPushAll(); | |
try { | |
Iterator<PushResult> it = pc.call().iterator(); | |
if(it.hasNext()){ | |
System.out.println(it.next().toString()); | |
} | |
} catch (InvalidRemoteException e) { | |
e.printStackTrace(); | |
} | |
// cleanup | |
dir.deleteOnExit(); | |
} | |
} |
没. 你直接grack就好了. 我这里是因为有一个Java的需求而已. 是为真的Java程序写的.
十分感谢,您帮了大忙。
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
你准备哪样呢...难道开个 java 的 daemon 然后 mount 到 rails 上面么