สิ่งนี้อาจถูกมองว่าสกปรกสำหรับบางคน แต่วิธีแก้ปัญหาที่ใช้ได้จริงในกรณีของที่เก็บ github คือการสร้างสคริปต์เช่น "git-ls":
#!/bin/sh
remote_url=${1:? "$0 requires URL as argument"}
curl -s $remote_url | grep js-directory-link | sed "s/.* title=\"\(.*\)\".*/\1/"
ทำให้สามารถใช้งานได้และเข้าถึงได้แน่นอน: chmod a+x git-ls; sudo cp git-ls /usr/local/bin
. ตอนนี้คุณเพียงแค่เรียกใช้ตามที่คุณต้องการ:
git-ls https://github.com/mrquincle/aim-bzr
git-ls https://github.com/mrquincle/aim-bzr/tree/master/aim_modules
โปรดทราบด้วยว่ามีgit instaweb
ยูทิลิตี้สำหรับไฟล์ในเครื่องของคุณ เพื่อให้มีความสามารถในการแสดงไฟล์และมีเซิร์ฟเวอร์เช่นนั้นในความคิดของฉันจะไม่ทำลายลักษณะการกระจายอำนาจโดยธรรมชาติของ git
git clone
--depth 1
วิธีนี้หลีกเลี่ยงการดึงประวัติจำนวนมากที่อาจเกิดขึ้นและเพียงพอที่จะตอบคำถามเช่น "ไฟล์ใดabcdef1234567890
บ้างที่มีอยู่ในการแก้ไข"