1 En el servidor
cd ~
mkdir repository.git
cd repository.git
git --bare init
git config core.sharedRepository true
2 En local:
mkdir repository
cd repository
git init
git add *
git commit -m "Initial import"
git remote add origin git+ssh://user@server/home/user/git/repository.git
git push origin master
4 Permitiendo http
5 Estudiando cosas que pasan en tu propio repositorio
$ git pull
$ git status
$ git log fichero
$ git diff 84de2396c3f0fcdc9994028b5bf5f0005c763496
3c933adaf627bc8a58cfefb62ff0f2d5df640673 fichero
7 Un par de apuntes rápidos para deshacer cambios
$ git checkout -- file
$ git reset --hard HEAD~1
$ git push -f origin last_commit:branch
8 Cambiando de ramas
$ git branch origin/prod # en caso de no tenerla se crea la rama
origin/prod
$ git branch -a # comprobar que realmente estamos en master
$ git branch --track prod origin/prod # si no lo tenemos ya asocia prod a
origin/prod
$ git checkout prod # cambiamos a la rama prod
$ git merge master # se merguean los cambios desde master a prod
$ git push # se suben los cambios
9 Git Submodules: Añadir, Usar, Eliminar y Actualizar
9.1 Añadir
$ git submodule add git@mygithost:billboard lib/billboard
$ git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD ..." to unstage)
#
# new file: .gitmodules
# new file: lib/billboard
#
$ cat .gitmodules
[submodule "lib/billboard"]
path = lib/billboard
url = git@mygithost:billboard
9.2 Usando submódulos
$ git submodule init
Submodule 'lib/billboard' (git@mygithost:billboard) registered for
path 'lib/billboard'
$ git submodule update
Initialized empty Git repository in ~/git_dev/SampleTheme/lib/billboard/.git/
remote: Counting objects: 26, done.
remote: Compressing objects: 100% (22/22), done.
remote: Total 26 (delta 5), reused 0 (delta 0)
Receiving objects: 100% (26/26), 17.37 KiB, done.
Resolving deltas: 100% (5/5), done.
Submodule path 'lib/billboard': checked out '1c407cb2315z0847facb57d7
9d680f88ca004332'
10 Una gui
$ sudo apt-get install git-cola
C-x v v (siguiente acción. Ej: add, commit)
C-x v = (diff)
C-x v d (status)