2017-08-27 7 views
-1

Actuellement, nous passons de SVN à GIT dans mon entreprise.Comment valider pour SVN et GIT dans un commit?

Nous devons faire en sorte que les deux dépôts soient les mêmes pour les mois à venir, Je dois avoir une commande ou un autre moyen qui permette mon travail pour SVN et GIT.

Y a-t-il un tel moyen?

+0

Qu'entendez-vous par 'un commit'? veux-tu dire git miroir de svn? –

+0

Je veux dire, que je ne veux pas le faire en utilisant deux ou plusieurs commandes, juste en utilisant un par chaque commit à svn – roeygol

Répondre

-1

Oui, c'est. Utilisez git svn - il permet des manipulations bidirectionnelles entre git et SVN.

Vous vous engagez à git en utilisant git commit, puis appuyez sur validations sur SVN en utilisant git svn dcommit.

Si vous allez pousser engage de git local pour certaines télécommandes d'abord exécuter dcommit parce que dcommit envoie commits SVN, crée des révisions SVN et rebasage puis commits dans git pour synchroniser git avec SVN.

Lorsque quelqu'un d'autre ajoute de nouvelles validations à SVN, vous les récupérez dans git et les remasez en utilisant git svn rebase.

+0

Cette réponse n'essaie même pas de répondre à la question OP. Il a demandé spécifiquement à la commande ** one ** de s'engager dans Git et SVN en même temps. Bien que cette requête n'ait pas beaucoup de sens, votre réponse montre simplement le workflow normal de git-svn qui n'est pas ce que OP est après. ;-) – Vampire

-1

En fait, cela n'a pas beaucoup de sens, car vous avez de nombreux avantages à avoir un dépôt Git local d'un dépôt SVN distant de cette façon. Mais si vous voulez vraiment faire cela, créez simplement un alias qui fait ce que vous voulez. Par exemple. git config alias.committoboth '!ctb() { git commit "[email protected]" && git svn dcommit; }; ctb' et ensuite vous pouvez faire des choses comme git committoboth -m "my commit message".

Au lieu de cela, vous pouvez également jeter un oeil à https://subgit.com/. Si vous devez prendre en charge Git et SVN pour plusieurs utilisateurs sur une période plus longue, il peut être préférable de faire la synchronisation sur le serveur que cet outil indique.

+0

où dois-je exécuter ces commandes? – roeygol

+0

Dans votre référentiel – Vampire

+0

Si vous souhaitez que cet alias soit valide pour plusieurs référentiels, vous pouvez également ajouter '--global' pour écrire la configuration dans le fichier de configuration spécifique à l'utilisateur au lieu de celui spécifique au référentiel. – Vampire