Na akkor mégegyszer: értem, hogy hogyan működik, és nem az a bajom, hogy "fájlokban gondolkodtam", hanem az, hogy előállt rutinhasználat mellett egy olyan állapot, amit egyszerűbb volt az-egészet-letöröl-és-újraklónoz-zal megoldani. Valószínű, ha ráfecséreltem volna pár napot, akkor találok megoldást, de nem ez a lényeg, hanem az, hogy NEM ÉRI MEG ennyi időt pazarolni rá, mivel a projektemmel akarok foglalkozni, és nem a tool lelkivilágát ápolgatni.
Ha innen közelíted a problémádat, hamar rájössz, hogy neked nem az a bajod
Nehogy már a nyúl vigye a vadászpuskát... Nem én vagyok a számítógépért, hanem a számítógép van énértem. Nehogy már a gép akarja eldönteni helyettem, hogy nekem mi is a bajom, ne vicceljünk már. Ez a gyökkettő ikújú átlag lúzernél működhet, de bármelyik tapasztalt fejlesztő/poweruser falra mászik ettől, ezt garantálom.
Olyan ez, mintha egy SQL programozótól elvárnád, hogy tudja, a MariaDB, Postgre vagy épp az SQLite milyen bitszintű adatmodellt használ az adattárolásra, ahhoz, hogy SQL queryket tudjon írni. Persze, jól jöhet ez az ismeret néhány nagyon nagyon kisarkított esetben, na de nem kell tudni egy rutinhasználat során.
Egyébként általában az a jó stratégia, hogy kerüljük, hogy párhuzamosan ugyanazon a branchen dolgozzunk, a branch olcsó (hiszen csak egy pointer ;), mehetnek a különböző témák külön
A branchnek iszonyat sok hátránya van, például rendszeresen beszívom, hogy branchváltásnál elmásznak az utolsó fájlmódosítás dátumok, ami enyhén szólva is idegesítő, mert alátesz a GNU/make-nek. A felhasználók is utálják, mert sosem tudják, hogy akkor most melyik változatot is kéne letölteniük, és csak gyártják a ticketeket. Ráadásul a szétdivergáló kódbázist újraegyesíteni sokszor szopás a köbön, ahogy Te is említetted.
Mindezek ellenére megvan a branchelés létjogosultsága, csak korántsem egy csodafegyver, ami minden bajra jó.