2012-11-23 16 views
9

Gibt es ein Analog für SVN --non-interactive Befehlszeilenargument in GIT?Nicht interaktive GIT-Verwendung

Ich benutze GIT über gitpython Bibliothek und habe ein Problem an einigen Orten - Programm friert ein. In diesem Fall versucht GIT etwas vom Benutzer zu fragen, aber es geht nicht. Ich möchte die Versuche ablehnen.

Hier ist Prozess in freeze:

$ pstree -ap 14712 
python,14712 src/auto-release 
└─git,14720 pull --strategy=recursive -Xtheirs -v origin +master:origin/master 
    └─git-merge,14721 -s recursive -Xtheirs -v Merge branch 'master' of 172.17.2.22:~/test-repo HEAD 920e34cb7267f702b7a1bb3af93619175cb566f0 
+0

Es sieht so aus, als ob Sie einen Wrapper um Git erstellen möchten; sieh dir an (welche Sprache hat die beste Git-Api-Bindung) (http://stackoverflow.com/questions/4034962/which-language-has-the-best-git-api-bindings) –

+0

Und auf der anderen Seite, während es ist klar, dass Sie etwas Automatisierung wollen, ist es nicht klar, warum Sie es wollen, und warum Sie git dafür verwenden. Offenbar haben Sie Git gefragt, etwas zu tun, das eine Zusammenführung ausgelöst hat und meine Vermutung ist, dass Sie ihm nicht gesagt haben, wie man mit Konflikten umgeht. –

+0

Ist Argumente "-s rekursiv -Xtheirs" zu ziehen Befehl nicht sagen, Git, um "ihre" Chunks zu verwenden, ist Konfliktfall? Wenn nicht - zeigen Sie mir auf Handbuch, wo ich eine Methode zum Umgang mit Konflikten sagen kann. –

Antwort

5

Git Fragen nicht stellen, wenn es stdin ist und stdout ist nicht an der Klemme (isatty() gibt false), es endet in der Regel mit einem Fehler statt.

+0

können Sie das ausarbeiten? – CharlesB

+1

Wenn Git's stdin und stdout nicht mit terminal verbunden ist ('isatty()' gibt false zurück), endet es normalerweise mit einem Fehler, anstatt den Benutzer nach Details zu fragen. –

+0

Wusste nicht; Kannst du das in deinen Post schreiben, damit ich meinen Downvote entferne? – CharlesB