J'ai un serveur git local qui fonctionne sur mon NAS et je développe sur mon ordinateur portable et ma station de travail, tous dans mon réseau local. Donc, si je veux démarrer un projet dans un nouveau repo vide, je dois suivre les étapes suivantes cette réponse et
- créer un repo nu "mynewproject.git" sur le NAS
cd ${PROJECT}.git; git init --bare
- créer un 'repo' vide "mynewproject", également sur le NAS
cd ${PROJECT}; git init
- faire un commit initial dans "nouveau projet".
git add . ; git commit -m "initial commit" -a
- faire du repo nu l'origine distante du dossier actuel
git remote add origin ssh://${USER}@${REMOTEIP}${PROJECT}.git
- pousser vers le maître
git push origin master
- supprimer le répertoire 'project'.
rm -rf $PROJECT
Et ensuite je peux cloner le ${PROJECT}.git
depuis d'autres machines. Tout ce processus semble excessivement compliqué. Je veux dire, je l'ai scripté,
HOSTIP=XXX.XXX.XXX.XXX
USER=YYYYY
PROJECT=$1
[[ -z "${PROJECT}" ]] && exit 1
PROJECTNAME=${PROJECT}
PROJECT=$(pwd)/${PROJECT}
# create project and .git folders
mkdir ${PROJECT}
mkdir ${PROJECT}.git
# initialize folders for git
cd ${PROJECT}.git
git init --bare
cd ${PROJECT}
git init
# create initial project directory
echo "#!/bin/bash" > ${PROJECT}/ENV_${PROJECTNAME}.sh
git add .
git commit -m "initial commit" -a
# 'link' to 'remote' .git folder
git remote add origin ssh://${USER}@${HOSTIP}${PROJECT}.git
# push to master
git push origin master
# delete 'project' directory
rm -rf $PROJECT
echo "CREATED PROJECT $PROJECT.git"
echo "Clone with git clone ssh://${USER}@${HOSTIP}${PROJECT}"
exit 0
mais quand même, est-ce la bonne façon de procéder ?