Come posso visualizzare un repository GitHub e sapere quale versione del codice scaricare?

5

Sono nuovo di GitHub e nuovo nel mondo open source (proveniente da .NET). Ho un sito wiki multimediale e voglio installare un'estensione Google Analytics: link

La documentazione dell'estensione dice di scaricare il codice da GitHub .

Nel repository GitHub, ci sono alcune "recensioni" che dicono master e alcune che dicono diramazioni. Presumo che voglio un master e non un ramo. Ma come scegliere quale master scaricare? Inoltre, la documentazione dice che alcuni dei commit saranno taggati, ma questo non sembra essere il caso. Senza tag / documentazione c'è un modo semplice per sapere quali commit sono stabili e quali commit non lo sono?

Mi piacerebbe un po 'di saggezza generale su come affrontare un repository per un progetto come questo.

    
posta Bernie2436 30.07.2013 - 06:49
fonte

2 risposte

3

Se il repository segue i soliti schemi (che è leggermente più probabile per i repository Git rispetto ad altri VCS, nella mia esperienza), allora vuoi il ramo master per le versioni stabili. In teoria, se è in master , dovrebbe essere testato e funzionante, quindi il commit più recente su master dovrebbe essere la versione stabile più recente.

Guardando il repository che hai collegato, vado direttamente alla sezione "branches" e vedo "master". Cliccando su questo, vedo che questo commit è taggato REL1_21 , che presumo indica la versione 1.21, che suppongo corrisponda al nome di questa versione utilizzata nella documentazione. È un buon punto di partenza.

Scansione rapida da lì, vedo per lo più commit da parte di un bot, aggiornando la localizzazione. Probabilmente non c'è niente di irrisolto. C'è anche un commit che menziona un cambiamento. Se stanno facendo le cose correttamente, questa dovrebbe essere una correzione, e sicuramente non un cambiamento di rottura, perché è un commit a master senza un tag di versione. Controllando il commento su questo commit, vedo che menziona le misure adottate per preservare la compatibilità con le versioni precedenti.

Ora che sono felice che nulla sia stato spinto a master dall'ultima versione, mi limito a prendere l'ultimo commit: al momento della scrittura, è questo . Se ho problemi con questa versione, o se non ero convinto che il cambiamento fosse sicuro, avrei ricevuto ultimo taggato commit , e resta con esso fino a quando non aggiungono una versione a master taggata con qualcosa di più alto di 1.21, (che, basato su una rapida ipotesi sul loro sistema di versioning, sarebbe o REL1_22 o REL2_0 ).

Ovviamente, si spera che la documentazione del progetto indichi la versione corretta, rendendo inutile questo processo di individuazione, ma purtroppo non è sempre così. Quando ti trovi in questa situazione, il processo che ho usato qui funziona per la maggior parte dei repository, Git o altro, a condizione che sia stata usata una strategia di ramificazione vagamente ragionevole:

  • Trova un ramo chiamato "main", "master", "stable" o qualcosa di simile
  • Trova l'ultimo commit con tag versione su quel ramo
  • Controllare che non sia stato aggiunto nulla di strano a quel ramo, qualsiasi cosa possa introdurre cambiamenti improvvisi
    • Se non c'è nulla, prendi l'ultimo commit
    • Se c'è una modifica potenzialmente problematica, prendi il commit tag
  • In entrambi i casi, se hai problemi con la versione che hai, torna al commit con tag precedente.
  • Quando trovi una versione che funziona, segui questa procedura fino a quando non rilascerà una nuova versione taggata, quindi prendila. Se non funziona, torna a quello che eri prima e attendi una nuova versione.
risposta data 30.07.2013 - 11:02
fonte
2

In un repository git è molto facile scoprirlo. Ci saranno diversi rami e il master è solo un ramo dei rami. Nella tradizione troverai sul master le versioni stable / approved / current (dipende dalla gestione delle filiali). Alcune persone si sviluppano solo con il master.

Se tale repository è ospitato su Github (il collegamento non lo è), puoi vedere i tag abbastanza facilmente. Il repository collegato sembra mettere la versione più recente sul ramo principale. Devi semplicemente usare l'ultimo commit disponibile.

Quale versione si dovrebbe scaricare dipende enormemente da come viene mantenuto il progetto. Come esempio per un repository Github qui il repository Github di Symfony2 .

    
risposta data 30.07.2013 - 08:50
fonte

Leggi altre domande sui tag