Sledování průběhu práce na SW projektu

Sledování průběhu práce na SW projektu
« kdy: 05. 11. 2019, 08:27:04 »
Ahoj, nevíte někdo jestli existuje nějaký program, který by dokázal jakýmkoliv způsobem sledovat jak se mění obsah nějaké složky např. psaním softwaru nebo obecně textu? Toto pak třeba někam do grafu vykreslit nebo to umožnit jinak analyzovat.


Mlocik97

  • *****
  • 894
  • Ubunťák, JS dev.
    • Zobrazit profil
    • E-mail
« Poslední změna: 05. 11. 2019, 08:40:28 od Gabriel Mlocik »

Re:Sledování průběhu práce na SW projektu
« Odpověď #2 kdy: 05. 11. 2019, 12:36:49 »
Dík za reakci. Toto vypadá zajímavě, ale příjde mi že to je příliš svázané z repozitářem. Měl jsem na mysli něco odděleného od internetu co běží naprosto nezávisle.

Re:Sledování průběhu práce na SW projektu
« Odpověď #3 kdy: 05. 11. 2019, 15:30:09 »
Dík za reakci. Toto vypadá zajímavě, ale příjde mi že to je příliš svázané z repozitářem. Měl jsem na mysli něco odděleného od internetu co běží naprosto nezávisle.

Můžete mít git nainstalovaný lokálně.

Re:Sledování průběhu práce na SW projektu
« Odpověď #4 kdy: 05. 11. 2019, 20:52:28 »
Dík za reakci. Toto vypadá zajímavě, ale příjde mi že to je příliš svázané z repozitářem. Měl jsem na mysli něco odděleného od internetu co běží naprosto nezávisle.

Můžete mít git nainstalovaný lokálně.

Nejen, že „můžete“, ale on tak primárně funguje. Spojení na vzdálený repositář je „práce navíc“ (nic složitého).

Git funguje tak, že jakmile vytvoříte repositář (příkaz „git init“) lokálně se vytvoří složka „.git“. Není k tomu potřeba připojení, serveru, nic. Když do tohoto repositáře přidáte nové soubory, commity, atd., vše se děje ve složce „.git“ a stále není potřeba připojení k severu. Procházení historií? Offline. Slučovaní větví? Offline.

Vím, že se opakuji, ale úplně vše se nachází ve složce „.git“ a celou dobu, co pracujete, není potřeba žádného připojení, ani serveru.

Ty jsou potřeba jedině tehdy, když chcete začít s někým spolupracovat, někam odeslat svou historii, apod. Pro práci na lokálním projektu toto není potřeba od úplného začátku až do úplného konce. Já to tak u mnohých svých projektů dělal a dělám.

Samozřejmě je vhodné mít svá data zálohována. U gitu to lze dvěma způsoby - buď svůj lokální repositář napojíte na server (který nemusí být na internetu, vše, co je potřeba, je ssh spojení) a budete tam posílat své změny („git push“), nebo budete zálohovat složku „.git“ jakýmkoliv způsobem, kterým si zálohujete ostatní data (Firefox profil, dokumenty, atd.) (já k tomu třeba používám program Unison).

On ten git byl vyloženě navržený k tomu, aby fungoval offline, bez internetu a za to jej mám velice rád (přestože má své problémy). Mj. to znamená, že když začnu na něčem pracovat, tak se kdykoliv mohu rozhodnout, že už to začíná být moc velké, založím lokální repositář a rozhodnutí, zda jej napojím na nějaký server, nechám na jindy. Třeba na nikdy. Vývoj s repositářem, který je napojený na vzdálený server a tím, který není, je prakticky totožná. Jediný rozdíl je v tom, že navíc potřebuji stahovat práci kolegů a odesílat tu svou - což není nic neočekávaného, řekl bych.


Re:Sledování průběhu práce na SW projektu
« Odpověď #5 kdy: 06. 11. 2019, 09:14:50 »
Nestačilo by inotify?

Re:Sledování průběhu práce na SW projektu
« Odpověď #6 kdy: 06. 11. 2019, 09:51:56 »
Ahoj a dík za reakce. Podle toho ale soudím, že jsem se možná špatně vyjádřil co vlastně chci...Občas za mnou přijde můj šéf a zeptá se mě kolik času jsem strávil programováním nějaké funkce. Tohle je schopen udělat třeba i za měsíc od realizace. Zjistil jsem, že většinou nedokážu odpovědět. Dělám to tam, že se kouknu do repozitáře (mercurial), kdy se dělaly nějaké změny, zalovím v paměti a řeknu počet hodin. On to vynásobí dvakrát až třikrát podle toho jak důvěrně se tvářím a vyplyne z toho výsledná hodnota.
Chtěl bych to nyní dělat lépe a mít větší přehled, protože občas si k tomu sednu i doma, ale tam se práce výrazně komplikuje. Člověk si občas odběhne např. přiložit, udělat oběd apod. Když mu řeknu, že jsem to dělal celý víkend kdy jsem začal v jedenáct dopoledne a skončil ve dvě ráno asi nebude úplně nadšenej sečtením všech hodin.
Podle mě tedy používat data z repozitáře nelze, protože ty jsou závislá na počtu provedených komitů. Ty by se tedy museli dělat nějak automaticky a tyto automatické oddělit od těch skutečných. Je možné se něco takového se děje, protože když sleduju historii úprav přímo v netbeans tak tam jsou nějaké lokální změny, které se zaznamenávají velice často. Nepovedlo se mi ale zatím zjistit kde se to bere, protože v repozitářích tyto záznamy buď nejsou nebo jsou skryté.

No každopádně pokud toto někdo nějak řeší pokud vůbec, tak se rád přiučím.

Re:Sledování průběhu práce na SW projektu
« Odpověď #7 kdy: 06. 11. 2019, 11:16:50 »
Pozri si Pomodoro https://cs.wikipedia.org/wiki/Technika_Pomodoro
Da sa k tomu najst klient na web alebo na mobil ktory ti trackuje spotrebovane pomodora a robi statistiku ktoru mozes pouzit na timesheeting. Niektore sluzby dovoluju aj vyberat na ktorom tasku prave robis takze ten timesheet vyjde prehladnejsie.

Kit

  • *****
  • 707
    • Zobrazit profil
    • E-mail
Re:Sledování průběhu práce na SW projektu
« Odpověď #8 kdy: 06. 11. 2019, 13:13:45 »
Samozřejmě je vhodné mít svá data zálohována. U gitu to lze dvěma způsoby - buď svůj lokální repositář napojíte na server (který nemusí být na internetu, vše, co je potřeba, je ssh spojení) a budete tam posílat své změny („git push“), nebo budete zálohovat složku „.git“ jakýmkoliv způsobem, kterým si zálohujete ostatní data (Firefox profil, dokumenty, atd.) (já k tomu třeba používám program Unison).

Ještě je několik dalších způsobů, například mít bare na externím disku. Připojit, push, odpojit.

Re:Sledování průběhu práce na SW projektu
« Odpověď #9 kdy: 06. 11. 2019, 20:39:45 »
Samozřejmě je vhodné mít svá data zálohována. U gitu to lze dvěma způsoby - buď svůj lokální repositář napojíte na server (který nemusí být na internetu, vše, co je potřeba, je ssh spojení) a budete tam posílat své změny („git push“), nebo budete zálohovat složku „.git“ jakýmkoliv způsobem, kterým si zálohujete ostatní data (Firefox profil, dokumenty, atd.) (já k tomu třeba používám program Unison).

Ještě je několik dalších způsobů, například mít bare na externím disku. Připojit, push, odpojit.

To je pravda, byl jsem nepřesný, omlouvám se za to.

Re:Sledování průběhu práce na SW projektu
« Odpověď #10 kdy: 06. 11. 2019, 22:21:16 »
Tohle cely je nepochopeni prace vyvojare.
Kdyz na neco treba nemuzes prijit, je to cely podelany a jdes si dat kafe/cigaro/cokoliv a premyslis o tom a napadne te nejaka moznost reseni tak to jsi nepracoval a tudiz jsi to vyresil zadarmo?

Na tohle je dobry aspon castecne nejaky issue tracker a jeho propojeni s git webovym GUI (at uz gitlab, github nebo proste atlassian stack). Do commit message na zacatek davas issue identifikator. Pokud delas drbky tak rovnou zapisujes cas do issue s rozlisenim na zapocatou pul hodinu. Kdyz jsi na vetsich vecech tak proste beres 1/2 nebo 1 MD a to neznamena presne 8 hodin sedet u pocitace. Casto veci vyresim prave klabosenim o problemu s kolegou u kafe. Jindy to zase vyresi jeho problem. Ze bych si tohle mel odecist z pracovni doby? Nejsem vcerejsi.

Pomodoro taky muze pomoci, ale chce jistou disciplinu.
Sledovani casu aplikaci je naprd kdyz delas treba weby.

netbeans/jetbrains IDE proste maji lokalni DB zmen souboru (kdyz to je zapnute) a nijak to nezavisi na repository (s kterym umi tu DB porovnat a commity zvyraznit)
Děkuji za možnost editace příspěvku.

Re:Sledování průběhu práce na SW projektu
« Odpověď #11 kdy: 07. 11. 2019, 10:25:38 »
Pokud potrebuji presne sledovat cas, tak pouzivam nejaky issue tracker a tam si prubezne logguju cas na jednotlive tasky.

Re:Sledování průběhu práce na SW projektu
« Odpověď #12 kdy: 08. 11. 2019, 11:41:43 »