Ještě jako programátorské nemluvně mě proškolil jeden kolega, který vytvořil commit s nějakou změnou, napsal shrnutí do první řádky, a následně tam uvedl celkem rozsáhlý popis, kde vysvětloval co tam udělal, proč to tam udělal, proč to neudělal jinak. Dost mě to inspirovalo.
Většina věcí patří do kódu. Ale v tom commitu můžou a možná by měli být věci, které celou tu změnu nějak zastřešují a i obhajují.
Jak říká Linus: být užitečný.
Ne, to by rozhodně nebyl dobrý nápad. Link: může odkazovat na dodatečné informace a třeba i někam do bugzilly nebo jiného trackeru, ale to podstatné, tedy co se vlastně mění a jak a hlavně proč, to musí být obsaženo už v commit message. Často musím procházet historii konkrétního souboru pomocí něčeho jako git log -p -U10 -- ... a ten hledaný commit je dost náročné najít, i když jsou commit message napsané pořádně. Kdyby polovina jen odkazovala někam na různé weby, tak se z toho zblázním. Navíc jednou ze zásadních výhod gitu je, že se spousta práce dá udělat offline, o to bychom takovým přístupem z velké části přišli, kdybychom bez připojení ani pořádně nemohli zjistit, co ten commit vlastně dělá a proč.
Ano, mozete aj tak nozikom vyrezavat do drevka zarezy
Tak to se omlouvám za nedorozumění, naivně jsem si myslel, že jde o vážnou diskusi o práci vývojáře.
Ale tie nastroje obvykle ponukaju full text search nad vsetkym vratane toho DIFF-u takze pokial aspon 'tusite' co hladate tak ziadny git log nepotrebujete.
O jakých nástrojích je tu řeč? Mám historii změn v určité funkci, která se změnila mnohokrát a není na první pohled jasné, kde konkrétně došlo ke změně, která je pro mne relevantní. Polovna commitů, které na ten kód sahaly, nebude mít Link: tag vůbec a ta druhá polovina bude odkazovat na několik různých trackerů a dalších webů. Každý vypadá jinak, je jinak organizovaný, provozovaný někým jiným a slouží úplně jinému účelu. Kvalitní commit message mi pomohou najít, který je ten pro mne zajímavý (klidně jich může být i víc), a pochopit, proč se to změnilo a proč zrovna takhle. Když tam místo toho budou jen odkazy na hromadu různých webů, celý proces bude řádově méně efektivní.
Když už se potřebuju detailně zaměřit na nějaký commit, může mi Link: poskytnout odkaz na další zdroje, kde se můžu dozvědět víc. Ale to podstatné musí být obsaženo už v commit message, nelze to schovávat za link a myslet si, že to tak stačí. Jistě, jsou projekty, kde vám to projde. (Jsou i porjekty, kde vám projde i "commit message" ve znění some changes
. Ale linuxové jádro - tedy aspoň jeho rozumně udržované části - mezi ně naštěstí nepatří.
Jedná se hlavně o nepochopení k čemu slouží které nástroje.
Git je verzovací nástroj. Slouží k tomu, aby se evidovali změny a featury, a případně se s nimi dalo manipulovat. Tudíž z logiky věci, do commit message píšu, co a proč tato změna.
V kódu a v komentářích v kódu píšu, co co dělá, k čemu to slouží, jak se to používá - reflektuje to aktuální stav.
Trackovací nástroje slouží k plánování a diskusi změn.
Úplně tam nepozoruji žádný průnik. Proto se domnívám, že původní představa "A nie je lepsie link do nejake nastroja povedzme ze Issue alebo Project tracking" je zcela chybná.
Nicméně i u velmi nelevných profesionálů je krásně vidět, jak podobné naivní představy končí... https://community.f5.com/discussions/technicalforum/broken-links-on-devcentral/217921 (BTW už 4 roky starý příspěvek, nemalý problém je do teď když člověk něco specifického hledá...)
Ne, linkovat na externí zdroje opravdu není ve střednědobém horizontu dobrý nápad, a ani nejdokonalejší AI powered full text search toho na broken linku moc nenajde...