Ho appena creato un progetto Java. Voglio verificare questo progetto nella posizione SVN con l'aiuto di SVNKit.aggiungere cartelle e salvare file usando SVNKit
Uso il codice seguente, che aggiunge una cartella al repository SVN. Ma non ha creato alcuna cartella .svn
nella cartella /Users/test/svnAddDirCheck
.
Desidero che i file vengano sottoposti a controllo e anche in futuro voglio salvare alcuni file modificati. Senza verificare il codice sorgente, come posso fare questo? Posso aggiungere questi file in SVN così come posso trasferire direttamente qualsiasi file modificato?
@Test
public void importWholeDir() throws Exception {
try {
DAVRepositoryFactory.setup();
SVNRepositoryFactoryImpl.setup();
FSRepositoryFactory.setup();
String svnUrl = "https://abc.com/svn/repos/projects/test/CREATE2";
File dir = new File("/Users/test/svnAddDirCheck");
SVNURL url = SVNURL.parseURIDecoded(svnUrl);
String userName = "XXXXXXX";
String userPassword = "XXXXXXXXX";
importDirectoryContentToSubversion(svnUrl, dir.getPath(), userName, userPassword, "directory and file added");
} catch (Exception e) {
e.printStackTrace();
}
}
public static SVNCommitInfo importDirectoryContentToSubversion(final String repositoryURL, final String subVersionedDirectory, final String userName, final String hashedPassword, final String commitMessage) throws SVNException {
final SVNClientManager cm = SVNClientManager.newInstance(new DefaultSVNOptions(), userName, hashedPassword);
return cm.getCommitClient().doImport(new File(subVersionedDirectory), SVNURL.parseURIEncoded(repositoryURL), "<import> " + commitMessage, null, false, true, SVNDepth.fromRecurse(true));
}
Quindi, hai importato una directory nel repository Apache Subversion. Non renderà la directory locale una copia funzionante, quindi l'unica opzione per te è quella di "svn importare" i nuovi file. ** Perché non vuoi eseguire il checkout di una copia di lavoro? ** Qual è il compito? – bahrep
Sto sviluppando un'applicazione, in cui l'utente può creare un'applicazione. e ho fornito la possibilità di effettuare il check-in del loro progetto dalla mia app stessa.Ho usato il codice sopra, che aggiunge il progetto al repository, ma non sta facendo il controllo della versione per la cartella del check-in. – Muthu
puoi chiamare "checkout" su questa directory dopotutto, non sovrascriverà i file esistenti. –