J'ai un répertoire non vide (par exemple / etc / quelque chose) avec des fichiers qui ne peuvent pas être renommés, déplacés ou supprimés.
Je veux vérifier ce répertoire dans git en place.
Je veux pouvoir pousser l'état de ce référentiel vers un référentiel distant (sur une autre machine) en utilisant "git push" ou quelque chose de similaire.
C'est trivial en utilisant Subversion (actuellement nous le faisons en utilisant Subversion) en utilisant:
svn mkdir <url> -m <msg>
cd <localdir>
svn co <url> .
svn add <files etc>
svn commit -m <msg>
Quel est l'équivalent git?
Puis-je "git clone" dans un répertoire vide et simplement déplacer le répertoire .git et que tout fonctionne?
git init
dans le répertoire local?Réponses:
Étant donné que vous avez configuré un démon git
<url>
et un référentiel vide:la source
git config branch.master.remote origin
etgit config branch.master.merge refs/heads/master
ce que je vais finir sera exactement le même que si je clonais le référentiel distant? à- diregit pull
etgit push
va tout simplement travailler ?AppName
dans GitHub. Je ne savais pas exactement quels étaient les<url>
moyens. Donc, pour ceux qui ont la même question, nous utilisons simplement GitHub.com, nous n'exécutons pas notre repo, puis<url>
celui utilisé dans la 5ème ligne ressemblait à ceci:https://github.com/CompanyName/AppName
git pull origin master --allow-unrelated-histories
de faire une fusion.Voilà comment je fais. J'ai ajouté des explications pour comprendre ce qui se passe.
Initialiser le référentiel local
initialisez d'abord Git avec
Ajoutez tous les fichiers pour le contrôle de version avec
Créez un commit avec le message de votre choix
Initialiser le référentiel distant
Créez un projet sur GitHub et copiez l'URL de votre projet. comme indiqué ci-dessous:
Lier le repo distant au repo local
Utilisez maintenant l'URL copiée pour lier votre référentiel local avec le référentiel GitHub distant. Lorsque vous clonez un référentiel avec git clone, il crée automatiquement une connexion distante appelée origine pointant vers le référentiel cloné. La commande distante est utilisée pour gérer un ensemble de référentiels suivis.
Synchroniser
Maintenant, nous devons fusionner le code local avec le code distant. Cette étape est critique sinon nous ne pourrons pas pousser le code sur GitHub. Vous devez appeler «git pull» avant de pousser votre code.
Validez votre code
Poussez enfin toutes les modifications sur GitHub
la source
Voici ma solution:
la source
.gitignore
&README.dm
Dans le cas où le référentiel distant n'est pas vide (c'est le cas si vous utilisez IBM DevOps sur hub.jazz.net), vous devez utiliser la séquence suivante:
EDIT 30 janvier 17: S'il vous plaît voir les commentaires ci-dessous, assurez-vous que vous êtes sur le bon repo!
la source
Quand un référentiel github n'est-il pas vide, comme .gitignore et license
Utilisez pull --allow-unrelated-history et push --force-with-lease
Utiliser des commandes
la source
git push -u origin master --force-with-lease
La façon la plus simple de le faire que je trouve utile est la suivante.
Ce n'est peut-être pas la manière officielle, mais cela fonctionne bien.
Supposons que vous ayez un projet nommé "
XYZ
" sur votre PC. Vous voulez maintenant faire un git repo de ce projet sur github et utiliser ses fonctionnalités.Étape 1 : allez à "
www.github.com
"Étape 2 : créez un référentiel avec un
README.md
fichier " " (nommez-le comme vous l'aimez)Étape 3 : clonez le référentiel sur votre PC.
Étape 4 : Dans le dossier cloné, vous obtiendrez deux choses: un
.git
dossier " " et unREADME.md
fichier " ". Copiez ces deux éléments dans votre dossier de projet "XYZ
".Étape 5 : supprimez le référentiel cloné.
Étape 6 : ajoutez, validez et envoyez tous les fichiers et dossiers de votre projet.
Maintenant, vous pouvez simplement utiliser votre projet "
XYZ
" comme référentiel git.la source
J'avais un problème similaire. J'ai créé un nouveau référentiel, PAS DANS L'ANNUAIRE QUE J'AI VOULU FAIRE UN REPOSITOIRE . J'ai ensuite copié les fichiers créés dans le répertoire dans lequel je voulais créer un référentiel. Ouvrez ensuite un référentiel existant en utilisant le répertoire dans lequel je viens de copier les fichiers.
REMARQUE: j'ai utilisé le bureau github pour créer et ouvrir le référentiel sortant.
la source
Voici ma solution si vous avez créé le référentiel avec une valeur par défaut
readme file
oulicense
la source