2012-10-05 3 views
0

Une longue explication de mes actions, attachez votre ceinture. Noob ici :)BitBucket - non-fast-forward

J'essaie de partager tout mon projet avec quelques amis et au lieu de partager un fichier .zip, j'ai pensé créer un référentiel. Je ne savais pas comment cela fonctionnait (je pensais juste que vous téléchargiez une nouvelle version de votre fichier via le navigateur) et j'ai commencé avec BitBucket. J'ai suivi la documentation BitBucket et clonées mon dépôt vide

C:\Users\Me\repos\name-of-repository 

Cependant, mon espace de travail réel est dans C: \ xampp \ htdocs \ nom de projet

Donc, si je devais faire des changements , Je devrais copier tout mon répertoire de travail et le remplacer dans le dépôt dans/repos /. J'ai trouvé cela assez ennuyeux et j'ai appris à changer le répertoire Home en modifiant la variable home (j'ai réussi à pousser si! Accueil est maintenant défini sur C: \ xampp \ htdocs \ nom-de-projet. J'ai essayé la même méthode d'ajouter des fichiers, commettre et finalement pousser, mais je suis maintenant confronté à une erreur en tant que telle: http://i.imgur.com/756ea.png

J'ai essayé d'ajouter + développer à la fin J'ai essayé d'utiliser --force, mais J'utilise la syntaxe correcte J'ai essayé $ git pull = rien ne s'est passé. J'ai essayé $ git merge (mon répertoire de travail est mis à jour par rapport à) = Aucune validation spécifiée et merge.defaultToUpstream non défini. Je veux juste mettre à jour mon dépôt à distance! Je ne suis pas du tout inquiet du fait que cela va causer des problèmes à d'autres qui modifient le code. Je suis le seul, d'autres suivent les changements. Personne ne va le fourrer non plus.

Vraiment coincé, toute aide est appréciée! TortoiseHg, TortoiseGit ne fonctionnent pas exactement non plus.

Répondre

1

Je pense que vous abordez ce problème de la mauvaise façon.

Avez-vous essayé d'initialiser votre répertoire de travail en tant que référentiel git? Une fois que vous faites cela, vous pouvez simplement pousser vos modifications sur votre référentiel bitbucket. Fusionner deux référentiels est la chose sur le contrôle de version distribuée. Bitbucket peut également être en mesure de cloner votre répertoire de travail.

par exemple.

cd working 
git init 
set up your .gitignore file (optional, but really recommended) 
git add . 
git commit -m "Initial commit" 
git push https://[email protected]/bhavyadaiya/yourrepositoryname.git master 
+0

Je suis d'accord avec tout sauf la dernière phrase. Bitbucket n'aura pas accès à distance à son répertoire de travail. – madth3

+0

J'oublie d'ajouter le maître à la poussée, mais tout fonctionne bien. git push vous demandera le mot de passe pour le dépôt bitbucket. Cela suppose également que vous avez déjà créé le référentiel sur bitbucket – LukeN

+0

Merci pour votre réponse, et oui j'ai déjà un dépôt sur Bitbucket. Je vais essayer maintenant :) – bhavyadaiya

0

Un autre a introduit des modifications dans votre repo bitbucket. Maintenant, vos propres changements ont divergé de la branche distante, vous devez donc apporter ces changements dans votre dépôt local, et fusionner ces changements avec les vôtres.

# I assume you use the git bash environment, not the cmd environment 

git fetch     # get the current state of your bb repo 
git diff origin/master  # show the differences between your branch and the remote branch 
git diff `git merge-base master origin/master`..origin/master # show the differences introduced by the other branch 
git diff `git merge-base master origin/master`..master # show your local changes 
git merge origin/master # merge the other branch into your local branch