AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

TortoiseHG: Wie chunks aufsplitten?

Ein Thema von Der schöne Günther · begonnen am 10. Okt 2014 · letzter Beitrag vom 14. Okt 2014
Antwort Antwort
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.757 Beiträge
 
Delphi 12 Athens
 
#1

AW: TortoiseHG: Wie chunks aufsplitten?

  Alt 10. Okt 2014, 16:30
Solange Mercurial die beiden Änderungen als zu dem gleichen Codebereich gehörend ansieht und in einen Chunk packt, weiß ich auch keine Möglichkeit, das aufzusplitten. Auch das Shelve-Tool arbeitet immer noch chunk-orientiert. Im Moment sehe ich da nur die Möglichkeit, die Datei zu sichern, die unerwünschten Zeilen rauszulöschen, committen, rücksichern und nochmal committen.

Nur mal aus Interesse, weil ich schon lange nicht mehr damit gearbeitet habe: wie würdest du das denn in SVN machen?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.212 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: TortoiseHG: Wie chunks aufsplitten?

  Alt 10. Okt 2014, 16:48
Dann wäre ich jetzt aber wirklich hilflos

In Subversion würde man einfach
  1. für die entsprechende(n) Datei(en) "Nach Commit wiederherstellen" aktivieren (Rechtsklick im Commit-Fenster)
  2. mit Tortoisemerge die Dinge, die noch nicht committet werden sollen rausnehmen
  3. committen

Ich hatte mir so viel vom Mercurial Shelf erhofft, aber wenn der im Endeffekt überhaupt nichts kann ist das ja auch irgendwo weitgehend sinnfrei


"Sichern und Wiederherstellen". Eigentlich möchte ich ja auch genau das. Kennst du da zufällig ein Add-On? Das jedes mal von Hand zu machen raubt einem ja auch die Zeit...
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#3

AW: TortoiseHG: Wie chunks aufsplitten?

  Alt 10. Okt 2014, 16:49
Wäre crecord vielleicht etwas? Ich kenne es selber nicht, aber es scheint das zu tun, was du willst. Von sich aus kann TortoiseHg das glaube ich nicht.
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.212 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: TortoiseHG: Wie chunks aufsplitten?

  Alt 10. Okt 2014, 17:02
Das sieht gut aus, läuft aber nicht einmal unter Windows.
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.821 Beiträge
 
Delphi 12 Athens
 
#5

AW: TortoiseHG: Wie chunks aufsplitten?

  Alt 13. Okt 2014, 07:36
Die Frage ist jetzt aber wirklich mal rein akademischer Natur, oder? Wenn Dich Zwischenschritte interessieren, die Du nicht comitted hast, dann solltest Du sie halt künftig comitten. Woher soll denn Hg wissen, wie Deine Zwischenschritte zu einem Commit aussehen? Oder anders gefragt: wieso sollte sich Hg mit der Abspeicherung von (erratenen) Zwischenschritten belasten? Ist der Code nach einem Pull oder Merge falsch? Wenn nein, ist alles gut. Wenn ja, dann könnten wir dort prüfen, wieso er falsch ist, und einen Bugreport aufmachen.

Ausserdem: Befrei Dich von Deiner Erinnerung an SVN, das ist eigentlich kontraproduktiv.

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.757 Beiträge
 
Delphi 12 Athens
 
#6

AW: TortoiseHG: Wie chunks aufsplitten?

  Alt 13. Okt 2014, 08:19
Wenn Dich Zwischenschritte interessieren, die Du nicht comitted hast, dann solltest Du sie halt künftig comitten. Woher soll denn Hg wissen, wie Deine Zwischenschritte zu einem Commit aussehen? Oder anders gefragt: wieso sollte sich Hg mit der Abspeicherung von (erratenen) Zwischenschritten belasten?
Im Prinzip hast du zwar Recht, aber das setzt schon eine gehörige Disziplin voraus. Auch nach langjähriger Arbeit mit Mercurial passiert es mir immer wieder, daß ich zwei, drei Sachen gleichzeitig mache und das Commit dazwischen vergesse. Das sind in der Regel nicht unterschiedliche Fehler oder Features, sondern eher so kleine Ungereimtheiten auflösen und Unschönheiten beseitigen, die aber mit der eigentlichen Aufgabe nichts zu tun haben. Bisher konnte ich das durch Abwählen der Dateien oder Chunks noch lösen. Einen solchen Fall, wie Günther ihn darstellt, hatte ich bisher noch nicht. Es wäre allerdings schon ein deutlicher Komfortgewinn, wenn man beim Commit auch zeilenweise auswählen kann welche Änderung rein kommt oder nicht. Die Existenz der crecord-Extension zeigt zumindest, daß auch andere dieses Problem haben. Bedauerlicherweise ist die Extension zu Linux-lastig und wird es deswegen wohl nicht in das Standard-Deployment schaffen. Grundsätzlich sollte jedes halbwegs brauchbare Merge-Tool der Aufgabe gewachsen sein - was wiederum Raum für Hoffnung lässt. Meine eigenen Python-Kenntnisse sind leider zu rudimentär um die Aufgabe selbst zu übernehmen.

Jetzt kommt mir gerade eine Idee, wie man das durch einen geschickten Workflow eventuell auch mit Bordmitteln lösen könnte. Ich muss mir das mal eine Weile durch den Kopf gehen lassen...
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.212 Beiträge
 
Delphi 10 Seattle Enterprise
 
#7

AW: TortoiseHG: Wie chunks aufsplitten?

  Alt 13. Okt 2014, 08:52
Ich gebe ein ganz anderes Beispiel: Du änderst an einem DFM-Formular etwas. Setzt eine Komponente von Enabled = True auf Enabled = False oder so etwas.

Zeitgleich ändern sich am Formular auch ganz automatisch Werte wie Height, Width, ClientHeight, ClientWidth, ExplicitWidth, ExplicitHeight, TabOrder. Oder ich verschiebe aus Versehen einen Button um einen Pixel.

Die Änderungen liegen jetzt nah genug bei einander- Ich "bekomme" nur einen Chunk.
  Mit Zitat antworten Zitat
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#8

AW: TortoiseHG: Wie chunks aufsplitten?

  Alt 14. Okt 2014, 10:55
Du könntest auch zu Git wechseln, das ist wie Mercurial, nur dass solche Dinge dort ohne plugins einfach gehen.

Der momentan beste Konverter ist wohl Kiln Harmony.
Vielleicht fallt du/ihr ja unter die Einschränkungen der Startup Edition, dann können deine Teammates weiterhin HG nehmen, während du Git nutzen kannst:
http://www.fogcreek.com/kiln/student-and-startup/
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:03 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz