Jawaban:
Jangan hanya menautkan ke nomor baris! Pastikan untuk menggunakan URL kanonik juga. Kalau tidak, ketika file itu diperbarui, Anda akan memiliki URL yang mengarah ke baris yang salah!
Cara membuat tautan permanen ke jalur yang benar:
Klik nomor baris yang Anda inginkan (seperti baris 18), dan URL di peramban Anda akan #L18
ditempelkan di bagian akhir. Anda benar-benar mengklik pada 18
di sebelah kiri, bukan garis kode. Terlihat seperti ini:
Dan sekarang URL browser Anda terlihat seperti ini:
https://github.com/git/git/blob/master/README#L18
Jika Anda ingin beberapa baris dipilih, cukup tahan tombol shift dan klik nomor baris kedua, seperti baris 20. Sepertinya ini:
Dan sekarang URL browser Anda terlihat seperti ini:
https://github.com/git/git/blob/master/README#L18-L20
Inilah bagian yang penting:
Sekarang dapatkan url kanonik untuk komit tertentu dengan menekan y
tombol. URL di browser Anda akan berubah menjadi seperti ini:
https://github.com/git/git/blob/5bdb7a78adf2a2656a1915e6fa656aecb45c1fc3/README#L18-L20
Tautan itu berisi hash SHA aktual untuk komit tertentu, bukan versi file saat ini master
. Itu berarti bahwa tautan ini akan berfungsi selamanya dan tidak mengarah ke baris 18-20 dari versi file apa pun di masa depan yang mungkin berisi.
Sekarang nikmati cahaya dari tautan permanen baru Anda. ;-)
pembaruan 9/29/2017: Seperti yang ditunjukkan oleh @watashiSHUN, github kini telah membuatnya lebih mudah untuk mendapatkan tautan permanen dengan menyediakan ...
menu di sebelah kiri setelah Anda memilih satu atau lebih baris. Tolong upvote jawaban watashiSHUN juga.
pembaruan 3/25/2016: Contoh kasus - dalam contoh di atas, saya merujuk ke file "README" di URL. URL non-kanonik itu benar-benar berfungsi ketika jawaban ini ditulis. Tetapi sekarang url-url itu tidak lagi berfungsi karena README
dipindahkan ke README.md
. Tetapi URL kanonik dengan hash SHA masih berfungsi, seperti yang diharapkan.
y
kunci juga ... help.github.com/articles/getting-permanent-links-to-files
L18-L20,L29
, dan seseorang dapat CTRL
mengklik untuk menambahkan baris yang tidak berurutan. Saya pikir ide Anda adalah saran yang bagus dan akan sangat berguna.
README
itu README.md
?
@ broc.seib memiliki jawaban yang canggih , saya hanya ingin menunjukkan bahwa alih-alih menekan y
untuk mendapatkan tautan permanen, github sekarang memiliki UI yang sangat sederhana yang membantu Anda mencapainya.
Pilih baris dengan mengklik nomor baris atau pilih beberapa baris dengan menekan shift
(sama seperti cara Anda memilih beberapa folder dalam file explorer)
di sudut kanan baris pertama yang Anda pilih, perluas ...
dan klikcopy permalink
https://github.com/python/cpython/blob/c82b7f332aff606af6c9c163da75f1e86514125e/Doc/Makefile#L1-L4
Klik nomor baris, lalu salin dan tempel tautan dari bilah alamat. Untuk memilih rentang, klik nomornya, dan kemudian geser klik nomor selanjutnya.
Atau, #L<number>
tautannya adalah format yang relatif sederhana, cukup tambahkan sampai akhir untuk nomor baris tertentu, menggunakan tautan ke file. Berikut ini tautan ke baris ketiga git
repositori README
:
y
. ;-)
Anda dapat menggunakan permalink untuk memasukkan cuplikan kode dalam masalah, PR, dll.
Referensi:
https://help.github.com/en/articles/creating-a-permanent-link-to-a-code-snippet
Banyak editor (tetapi juga melihat bagian Perintah di bawah) mendukung tautan ke nomor baris atau rentang file di GitHub atau BitBucket (atau lainnya). Berikut daftar singkatnya:
Terkait dengan cara menautkan ke README.md
repositori GitHub ke nomor baris kode tertentu
Anda memiliki tiga kasus:
Kami dapat menautkan ke ( komit kustom )
Tetapi Tautan akan SELALU menautkan ke versi file lama, yang TIDAK akan memuat pembaruan baru di cabang master misalnya. Contoh:
https://github.com/username/projectname/blob/b8d94367354011a0470f1b73c8f135f095e28dd4/file.txt#L10
Kami dapat menautkan ke ( cabang khusus ) seperti (cabang-master). Tetapi tautan akan SELALU menautkan ke versi file terbaru yang akan berisi pembaruan baru. Karena pembaruan baru, tautan dapat mengarah ke nomor lini bisnis yang tidak valid. Contoh:
https://github.com/username/projectname/blob/master/file.txt#L10
GitHub TIDAK BISA membuat tautan-AUTO ke file apa saja baik ke (komit kustom) maupun (cabang-master) Karena masalah bisnis berikut:
Untuk garis dalam permintaan tarik.
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
Ini akan membawa Anda ke garis selama L dan R benar. Saya tidak yakin apakah ada cara untuk mengunjungi L ATAU RIe Jika PR menambahkan garis yang harus Anda gunakan R
. Jika menghapus garis yang harus Anda gunakan L
.
Dari: Hasilkan URL penunjuk baris ke Permintaan Tarik Github