Come posso fare riferimento a una filiale esistente da un problema in GitHub?


133

Diciamo che ho un ramo chiamato feature/1. E anche il numero 1. Voglio collegare quel ramo a quel problema.

C'è un modo per collegare quel ramo a quel problema dal problema? Senza impegnarsi.

Risposte:


93

Direttamente da GitHub :

Riferimenti

Alcuni riferimenti sono collegati automaticamente:

  • SHA: be6a8cc1c1ecfe9489fb51e4869af15a13fc2cd2
  • Rif. Utente @ SHA: mojombo @ be6a8cc1c1ecfe9489fb51e4869af15a13fc2cd2
  • Utente / Progetto @ SHA: mojombo / god @ be6a8cc1c1ecfe9489fb51e4869af15a13fc2cd2
  • #Num: # 1
  • User / # Num: mojombo # 1
  • Num. Utente / progetto n .: mojombo / god # 1

Sembra che direttamente (come in user / repo / branch) non sia possibile, ma forse usando l'id dell'albero?


73
Ho contattato l'assistenza di Github e mi hanno detto che non è possibile in questo momento.
Nerian,

5
Vorrei davvero che fosse possibile. Un modo per aggirare questo sarebbe usare le richieste pull (invece di spingere direttamente) e fare riferimento al problema all'interno della richiesta pull.
Olivier Lalonde,

2
Hmm, ha senso dato che i nomi dei rami non sono statici ma lo sono.
Jonasfj,

3
@jonasfj L'URL Github per un ramo è però statico - è sempre /user/repo/tree/branch-name(o /user/repo/commits/branch-namedipende da cosa vuoi vedere)
GMA

È possibile, come mostrato nella mia risposta a questa domanda.
LS

89

Come menzionato in un'altra risposta , GitHub crea automaticamente collegamenti a varie cose, inclusi altri repository GH, ma non alle filiali all'interno di tali repository. Quando voglio fare questo, faccio manualmente il collegamento in questo modo:

[a link to a branch](/_user_/_project_/tree/_branch_)

Dove _user_, _project_e _branch_dovrebbe essere sostituito con le parti dell'URL del ramo. Ad esempio, un ramo nel progetto "linguista" di GitHub:

[api-changes branch in github/linguist](/github/linguist/tree/api-changes)

Importante:

  • Il processore Markdown di GitHub crea collegamenti usando l'esatto valore dell'URL racchiuso tra parentesi. Devi specificare l'URL considerando come un browser gestirà quel link. Se l'URL specificato è solo la parte del percorso (come in questo esempio), i browser considereranno il percorso come relativo all'URL della pagina corrente. Se quel percorso relativo inizia con una barra (" /", anche come in questo esempio), sarà relativo alla radice del server dell'URL della pagina corrente. Altrimenti, i percorsi che non iniziano con la barra verranno trattati come relativi al genitore dell'URL della pagina corrente. (Questa è la specifica di base del collegamento HTML.)
  • Non dimenticare di includere la treeparte dell'URL quando ti riferisci a specifici rami di progetti.

8
Attualmente sto convertendo il mio link /user/proj/blob/branchanche se ho scritto treee non blob. Modifica: funzionante:../../tree/branch
caveau

@vault Puoi pubblicare un link qui al documento Markdown contenente un esempio di questo?
LS

@LS se ricordo bene, avevo bisogno di queste informazioni per scrivere questo file README .
caveau

2
@vault I see! Apparentemente ci sono regole diverse per i collegamenti dai file di repository MD rispetto al testo dell'edizione MD. L'orig. Q e la mia A riguardano i collegamenti nel testo del problema, ma aggiornerò la mia risposta per includere i file repo MD. Ho modificato il tuo repository e ho aggiunto un link a README.md. GH sembra rimuovere "/" dal collegamento e aggiungerlo all'URL corrente. Potrebbe essere un bug. Lo controllerò. Ad ogni modo, gli URL relativi con ".." hanno più senso nei file repo. Ad esempio, se hai unito il mio fork, il mio nuovo link in README.mdfarebbe riferimento al mio fork.
LS

13

Da aprile 2013 (" Etichette per filiali e tag per pagine di commit "):

  • Qualsiasi commit può menzionare il ramo di cui fa parte:

parte del ramo di commit

Se il commit non si trova sul ramo predefinito, l'indicatore mostrerà i rami che contengono il commit. Se il commit fa parte di una richiesta pull non unita, verrà visualizzato un collegamento .

Link per pull richiesta

Ciò significa che fare riferimento a un commit dal problema consentirà all'utente di vedere il ramo (guardando il commit) e persino di vedere un collegamento al problema (sempre guardando il commit).


6

Non puoi fare riferimento direttamente al ramo.

Ma puoi fare un riferimento a un ramo rispetto a un altro ramo. Se inserisci questo:

https://github.com/user1/repo/compare/branch1...branch2

renderà come

branch1...branch2

Inoltre, puoi confrontare i rami tra le forche. Se user2ha biforcato repo, funziona:

https://github.com/user1/repo/compare/branch1...user2:branch2

0

Stavo cercando la stessa possibilità in Git, ma non era disponibile nulla, quindi ho deciso di riferire direttamente il brach con un link markdown usando il riferimento Hash.

# Issue02

## Commit Hash _<hash_number>_

...Rest of comments in the issue...

Quindi, ora nella mia organizzazione facciamo sempre quel riferimento quando apriamo o chiudiamo un problema. Deve essere riferito a un determinato hash e indirettamente al ramo corrispondente.

Immagino che già ora, ma in caso contrario, per ottenere l'hash utilizzerai git log

Nota: non si riferisce a un ramo certo ma a un commit,

Con alcune ore di lavoro penso che sia possibile farlo automaticamente e creare uno strumento da riga di comando,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.