2016-08-31 5 views
1

Gibt es eine Möglichkeit, zu einer bestimmten Revision zurückzukehren, während die Änderungen in den Kommentaren beibehalten werden. Zum Beispiel: -zurück zur Revision in SVN

Revision 33: -

public class A{ 
    private aa; 
    private bb; 
    private cc; 
} 

Revision 34: -

public class A{ 
    private aa; 
    private bb; 
    private cc; 
    private dd; 
} 

und dann viele andere Versionen gibt. Nun, wenn ich zurückkehren Änderungen aus Revision 34, ich möchte, dass die meine lokale Kopie wie folgt aussehen: -

Revision 120: -

public class A{ 
    private aa; 
    private bb; 
    /* changes from revision 34 reverted by XXXX on YYYY 
     * Following changes were reverted:- 
     *private cc; 
    */ 
} 

Ist es möglich, dies zu tun?

+1

Mögliches Duplikat von [svn: Wie man das Commit von jemand anderem rückgängig macht?] (Http://stackoverflow.com/questions/28266893/svn-how-to-revert-somebody-elses-commit) – alroc

+1

Rollback-Änderungen wurden durchgeführt abgedeckt [viele Male auf SO] (https://stackoverflow.com/search?q=svn+reverse+merge) (und ich habe mit einem von ihnen als ein Duplikat verlinkt) aber wie zum Einfügen von Kommentaren? Das sollte in der Commit-Nachricht sein, nicht in Ihrem Quellcode, da es der Verlauf der Datei ist, nicht der Code oder die Erklärung, wie/warum der Code überhaupt funktioniert. Subversion kennt keine Programmiersprachen oder Kommentare, daher wäre es nicht angebracht, den Code zu ändern (weil er kaputt gehen könnte). – alroc

+0

Ich dachte, dass es nett wäre, eine Überlagerungsansicht zu haben, um Kommentare im Code anzuzeigen, wo diese bestimmte Änderung gemacht wurde. – ArslanAnjum

Antwort

0

Das klingt sehr nah an den blame Befehl:

anzeigen Autor und Revisionsinformationen innerhalb der angegebenen Dateien [...].

Es wird für jede Zeile der Datei angezeigt, welche Revision hinzugefügt/geändert wurde und wer der Autor dieser Revision ist. Beispiel:

>svn blame http://svn.apache.org/repos/asf/subversion/trunk/README 
841184 striker 
836593  kfogel    Subversion, a version control system. 
836593  kfogel    ===================================== 
836593  kfogel 
841184 striker $LastChangedDate$ 
836593  kfogel 
841437 sussman Contents: 
841437 sussman 
841437 sussman  I. A FEW POINTERS 
841437 sussman  II. DOCUMENTATION 
841437 sussman III. PARTICIPATING IN THE SUBVERSION COMMUNITY 
841437 sussman  IV. QUICKSTART GUIDE 
849422 sussman  V. CONVERTING FROM CVS 

Wenn Sie TortoiseSVN verwenden, können Sie die Meldung über einen Tooltip für jede Zeile begehen sehen:

tortoiseproc /command:blame /path:http://svn.apache.org/repos/asf/subversion/trunk/README 

Screenshot of TortoiseSVN's blame dialog

Hinweis: Eine Einschränkung dieses Befehls ist, dass Es zeigt Ihnen keine Linien, die entfernt wurden. Es werden nur Linien angezeigt, die in der von Ihnen beschuldigten Revision sichtbar sind.

Verwandte Themen