ghq allows you to clone a project without worrying about where the project will be cloned, it also allows you to clone while respecting the tree structure of the remote repo.

git clone, it's that simple!

The cloning process with the command git clone command command may seem simple at first, but when you're managing several Gitrepositories, it can quickly become complex. This is even truer when working with repository forks. The ghq tool simplifies this management by centralising repositories in a specific location on your machine.

Let's say you want to work with dotfiles and you get a dotfiles with the command ghq get https://github.com/mathiasbynens/dotfiles.git. And now you want to work on your dotfilesThere's no need to think about where you're going to clone your project, just run ghq get https://github.com/badele/dotfiles.git. After running this command, the project structure will be clearly organised in your ghq.

What's more, when collaborating in teams involving the sharing of scripts using cloned projects, it is not necessary to specify specific paths such as /usr/local/nosprojets/xxx“.. For example, all you need to do is export a variable, such as TEAM_PROJECT=~/ghqfor the whole team and use this reference in your scripts. For example, you could use $TEAM_PROJECT/mateam/myproject/bin/monexecutable in your scripts, ensuring consistent access to shared resources.

tree
└─ ~/ghq
   └─ github.com
      ├─ mathiasbynens
      │  └─ dotfiles
      └─ badele
         └─ dotfiles

demo

script

demo-ghq.tape
Output demo-ghq.gif
 
Require nix-shell
 
Set TypingSpeed 75ms
Set FontSize 12
Set Width 800
Set Height 680
 
Hide
Type "nix-shell -p ghq tree --run zsh" Sleep 500ms Enter Sleep 2s
Type "reset" Sleep 500ms Enter Sleep 2s
Show
 
Type "tree -d -L 6 ~/ghq" Sleep 500ms Enter Sleep 2s
 
Type "ghq get https://github.com/mathiasbynens/dotfiles.git" Sleep 500ms Enter Sleep 2s
 
Type "tree -d -L 6 ~/ghq" Sleep 500ms Enter Sleep 2s
 
Type "ghq get https://github.com/badele/dotfiles.git" Sleep 500ms Enter Sleep 2s
 
Type "tree -d -L 6 ~/ghq" Sleep 500ms Enter Sleep 2s
 
Sleep 5s
    • openai
      • Reformulation of sentences
      • Correction of spelling mistakes
  • en/l_atelier/ghq.txt
  • Dernière modification : 2025/10/11 19:57
  • de 127.0.0.1