scratch/content/html/fr/blog/2010-03-22-Git-Tips.md
2010-05-09 14:53:46 +02:00

74 lines
1.6 KiB
Markdown

-----
isHidden: false
menupriority: 1
kind: article
created_at: 2010-03-22T10:42:27+02:00
title: Astuces Git
author_name: Yann Esposito
author_uri: yannesposito.com
tags:
- git
- tip
-----
## Cloner de github à travers un pare-feu
La façon standard:
<div><code class="zsh">
git clone git@github.com:yogsototh/project.git
</code></div>
En utilisant le port HTTPS :
<div><code class="zsh">
git clone git+ssh://git@github.com:443/yogsototh/project.git
</code></div>
## Cloner toutes les branches
`git clone` peut seulement récuper la branche `master`.
Si vous n'avez pas beaucoup de branches, vous pouvez simplement les clone le project et ensuite pour chacune d'entre elle lancer la commande suivante :
<div><code class="zsh">
git branch --track local_branch remote_branch
</code></div>
par exemple :
<div><code class="zsh">
$ git clone git@github:yogsototh/example.git
$ git branch
master *
$ git branch -a
master *
remotes/origin/HEAD -> origin/master
remotes/origin/experimental
$ git branch --track experimental remotes/origin/experimental
$ git branch
master *
experimental
</code></div>
Si vous avez beaucoup de branches il peut être utile d'utiliser *le script*/*la longue ligne de commande* suivant(e) :
<div><code class="zsh">
# first clone your project
$ git clone git@github.com:yogsototh/project.git
# copy all branches
$ zsh
$ cd project
$ for br in $( git br -a ); do
case $br in
remotes/*) print $br ;
case ${br:t} in
master|HEAD) continue ;;
*) git branch --track ${br:t} $br ;;
esac ;;
esac
done
</code></div>
Et toutes les branches seront récupérées en local.