Risposte:
Non limitarti a collegarti ai numeri di riga! Assicurati di utilizzare anche l' URL canonico . Altrimenti, quando quel file viene aggiornato, avrai un URL che punta alle righe sbagliate!
Come creare un collegamento permanente alle linee giuste:
Fai clic sul numero di riga desiderato (come la riga 18) e l'URL nel browser verrà #L18
virato alla fine. Fai letteralmente clic sul 18
lato sinistro, non sulla riga di codice. Somiglia a questo:
E ora l'URL del tuo browser è simile al seguente:
https://github.com/git/git/blob/master/README#L18
Se si desidera selezionare più righe, tenere semplicemente premuto il tasto Maiusc e fare clic su un secondo numero di riga, come la riga 20. È simile al seguente:
E ora l'URL del tuo browser è simile al seguente:
https://github.com/git/git/blob/master/README#L18-L20
Ecco la parte importante:
Ora ottieni l'URL canonico per quel particolare commit premendo il y
tasto. L'URL nel tuo browser cambierà per diventare qualcosa del genere:
https://github.com/git/git/blob/5bdb7a78adf2a2656a1915e6fa656aecb45c1fc3/README#L18-L20
Tale collegamento contiene l'hash SHA effettivo per quel particolare commit, anziché la versione corrente del file su master
. Ciò significa che questo collegamento funzionerà per sempre e non punta alle righe 18-20 di qualsiasi versione futura di quel file possa contenere.
Ora crogiolati nel bagliore del tuo nuovo link permanente. ;-)
aggiornamento 29/09/2017: Come sottolineato da @watashiSHUN, github ha ora reso più semplice ottenere il collegamento permanente fornendo un ...
menu a sinistra dopo aver selezionato una o più righe. Per favore, vota anche la risposta di @ watashiSHUN .
aggiornamento 25/03/2016: Caso in questione - nell'esempio sopra, ho fatto riferimento al file "README" nell'URL. Quegli URL non canonici in realtà hanno funzionato quando è stata scritta questa risposta. Ma ora quegli URL non funzionano più da quando sono README
stati spostati README.md
. Ma l'URL canonico con l'hash SHA funziona ancora, proprio come previsto.
y
anche la chiave ... help.github.com/articles/getting-permanent-links-to-files
L18-L20,L29
e che una persona potesse fare CTRL
clic per aggiungere righe non consecutive. Penso che la tua idea sia un grande suggerimento e sarebbe molto utile.
README
fosse README.md
?
@ broc.seib ha una risposta sofisticata , voglio solo sottolineare che invece di premere y
per ottenere il collegamento permanente, github ora ha un'interfaccia utente molto semplice che ti aiuta a raggiungerlo
Seleziona la linea facendo clic sul numero della linea o seleziona più righe per downholding shift
(lo stesso di come selezioni più cartelle in Esplora file)
nell'angolo destro della prima riga selezionata, espandi ...
e fai cliccopy permalink
https://github.com/python/cpython/blob/c82b7f332aff606af6c9c163da75f1e86514125e/Doc/Makefile#L1-L4
Fare clic sul numero di riga, quindi copiare e incollare il collegamento dalla barra degli indirizzi. Per selezionare un intervallo, fai clic sul numero, quindi fai clic sul numero successivo.
In alternativa, i collegamenti sono un formato relativamente semplice, basta aggiungere #L<number>
alla fine per quel numero di riga specifico, usando il collegamento al file. Ecco un link alla terza riga del git
repository README
:
y
. ;-)
Puoi utilizzare i permalink per includere snippet di codice in numeri, PR, ecc.
Riferimenti:
https://help.github.com/en/articles/creating-a-permanent-link-to-a-code-snippet
Molti editor (ma vedi anche la sezione Comandi di seguito) supportano il collegamento al numero di riga o all'intervallo di un file su GitHub o BitBucket (o altri). Ecco un breve elenco:
Relativo a come collegarsi a README.md
un repository GitHub a un numero di riga specifico di codice
Hai tre casi:
Possiamo collegarci a ( commit personalizzato )
Ma Link si collegherà SEMPRE alla vecchia versione del file, che NON conterrà, ad esempio, nuovi aggiornamenti nel ramo principale. Esempio:
https://github.com/username/projectname/blob/b8d94367354011a0470f1b73c8f135f095e28dd4/file.txt#L10
Possiamo collegarci a ( ramo personalizzato ) come (ramo principale). Ma il collegamento rimarrà SEMPRE all'ultima versione del file che conterrà nuovi aggiornamenti. A causa di nuovi aggiornamenti, il collegamento potrebbe puntare a un numero di linea commerciale non valido. Esempio:
https://github.com/username/projectname/blob/master/file.txt#L10
GitHub NON può effettuare il collegamento AUTO a nessun file né a (commit personalizzato) né (master-branch) a causa dei seguenti problemi aziendali:
Per una linea in una richiesta pull.
https://github.com/foo/bar/pull/90/files#diff-ce6bf647d5a531e54ef0502c7fe799deR27
https://github.com/foo/bar/pull/
90 <- PR number
/files#diff-
ce6bf647d5a531e54ef0502c7fe799de <- MD5 has of file name from repo root
R <- Which side of the diff to reference (merge-base or head). Can be L or R.
27 <- Line number
Questo ti porterà a una linea fintanto che L e R sono corretti. Non sono sicuro che ci sia un modo per visitare L OR RIe Se il PR aggiunge una linea che devi usare R
. Se rimuove una linea è necessario utilizzare L
.
Da: genera l'URL del puntatore di linea nella richiesta pull di Github