2009-06-04 4 views
3

Je ne m'attends pas à ce que quelqu'un résolve mon problème, mais je ne suis pas sûr de savoir comment résoudre ce problème. Si je fais un « statut git », je reçois:Git supprime régulièrement 2 répertoires de mon dépôt, comment puis-je résoudre ce problème?

# On branch master 
# Changes to be committed: 
# (use "git reset HEAD <file>..." to unstage) 
# 
#  deleted: app/controllers/application.rb 
# 
# Changed but not updated: 
# (use "git add <file>..." to update what will be committed) 
# 
#  modified: app/views/main/index.html.erb 
#  modified: public/stylesheets/bandop.css 
# 
# Untracked files: 
# (use "git add <file>..." to include in what will be committed) 
# 
#  vendor/plugins/contacts/.gitignore 
#  vendor/plugins/contacts/.gitmodules 

mais si je le fais « ajouter git. » puis « git status », je reçois:

# On branch master 
# Changes to be committed: 
# (use "git reset HEAD <file>..." to unstage) 
# 
#  deleted: app/controllers/application.rb 
#  modified: app/views/main/index.html.erb 
#  modified: public/stylesheets/bandop.css 
#  new file: vendor/plugins/blackbook 
#  deleted: vendor/plugins/blackbook/CHANGES.markdown 
#  deleted: vendor/plugins/blackbook/Manifest.txt 
#  deleted: vendor/plugins/blackbook/README.markdown 
#  deleted: vendor/plugins/blackbook/Rakefile 
#  deleted: vendor/plugins/blackbook/blackbook.gemspec 
#  deleted: vendor/plugins/blackbook/debug_blackbook.rb 
#  deleted: vendor/plugins/blackbook/init.rb 
#  deleted: vendor/plugins/blackbook/lib/blackbook.rb 
#  deleted: vendor/plugins/blackbook/lib/blackbook/exporter/base.rb 
#  deleted: vendor/plugins/blackbook/lib/blackbook/exporter/vcf.rb 
#  deleted: vendor/plugins/blackbook/lib/blackbook/exporter/xml.rb 
#  deleted: vendor/plugins/blackbook/lib/blackbook/importer/aol.rb 
#  deleted: vendor/plugins/blackbook/lib/blackbook/importer/base.rb 
#  deleted: vendor/plugins/blackbook/lib/blackbook/importer/csv.rb 
#  deleted: vendor/plugins/blackbook/lib/blackbook/importer/freenet.rb 
#  deleted: vendor/plugins/blackbook/lib/blackbook/importer/gmail.rb 
#  deleted: vendor/plugins/blackbook/lib/blackbook/importer/gmx.rb 
#  deleted: vendor/plugins/blackbook/lib/blackbook/importer/hotmail.rb 
#  deleted: vendor/plugins/blackbook/lib/blackbook/importer/page_scraper.rb 
#  deleted: vendor/plugins/blackbook/lib/blackbook/importer/web.de.rb 
#  deleted: vendor/plugins/blackbook/lib/blackbook/importer/yahoo.rb 
#  deleted: vendor/plugins/blackbook/test/fixtures/aol_new_contacts.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/gmail.csv 
#  deleted: vendor/plugins/blackbook/test/fixtures/gmail_bad_login_response_stage_2.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/gmail_contacts.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/gmail_login_response_stage_1.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/gmail_login_response_stage_2.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/gmail_login_response_stage_2a.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/gmail_login_response_stage_3.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/gmail_redirect_body.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/hotmail_bad_login_response_stage_2.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/hotmail_contacts.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/hotmail_login_response_stage_1.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/hotmail_login_response_stage_2.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/hotmail_login_response_stage_3.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/hotmail_scrape_first_page.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/hotmail_scrape_response_stage_1.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/hotmail_scrape_response_stage_2.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/hotmail_scrape_response_stage_3.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/yahoo_bad_login_response_stage_2.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/yahoo_contacts.csv 
#  deleted: vendor/plugins/blackbook/test/fixtures/yahoo_contacts_not_logged_in.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/yahoo_contacts_stage_1.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/yahoo_login_response_stage_1.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/yahoo_login_response_stage_2.html 
#  deleted: vendor/plugins/blackbook/test/fixtures/yahoo_no_user_response_stage_2.html 
#  deleted: vendor/plugins/blackbook/test/freenet_importer_test.rb 
#  deleted: vendor/plugins/blackbook/test/gmx_importer_test.rb 
#  deleted: vendor/plugins/blackbook/test/scripts/live_test.rb 
#  deleted: vendor/plugins/blackbook/test/test_blackbook.rb 
#  deleted: vendor/plugins/blackbook/test/test_blackbook_exporter_base.rb 
#  deleted: vendor/plugins/blackbook/test/test_blackbook_exporter_vcf.rb 
#  deleted: vendor/plugins/blackbook/test/test_blackbook_exporter_xml.rb 
#  deleted: vendor/plugins/blackbook/test/test_blackbook_importer_aol.rb 
#  deleted: vendor/plugins/blackbook/test/test_blackbook_importer_base.rb 
#  deleted: vendor/plugins/blackbook/test/test_blackbook_importer_csv.rb 
#  deleted: vendor/plugins/blackbook/test/test_blackbook_importer_gmail.rb 
#  deleted: vendor/plugins/blackbook/test/test_blackbook_importer_hotmail.rb 
#  deleted: vendor/plugins/blackbook/test/test_blackbook_importer_page_scraper.rb 
#  deleted: vendor/plugins/blackbook/test/test_blackbook_importer_yahoo.rb 
#  deleted: vendor/plugins/blackbook/test/test_helper.rb 
#  deleted: vendor/plugins/blackbook/test/web.de_importer_test.rb 
#  deleted: vendor/plugins/blackbook/vendor/plugins/blackbook/lib/autotest/blackbook.rb 
#  deleted: vendor/plugins/blackbook/vendor/plugins/blackbook/lib/autotest/discover.rb 
#  new file: vendor/plugins/contacts 
#  deleted: vendor/plugins/contacts/MIT-LICENSE 
#  deleted: vendor/plugins/contacts/README.rdoc 
#  deleted: vendor/plugins/contacts/Rakefile 
#  deleted: vendor/plugins/contacts/lib/config/contacts.yml 
#  deleted: vendor/plugins/contacts/lib/contacts.rb 
#  deleted: vendor/plugins/contacts/lib/contacts/flickr.rb 
#  deleted: vendor/plugins/contacts/lib/contacts/google.rb 
#  deleted: vendor/plugins/contacts/lib/contacts/version.rb 
#  deleted: vendor/plugins/contacts/lib/contacts/windows_live.rb 
#  deleted: vendor/plugins/contacts/lib/contacts/yahoo.rb 
#  deleted: vendor/plugins/contacts/spec/contact_spec.rb 
#  deleted: vendor/plugins/contacts/spec/feeds/contacts.yml 
#  deleted: vendor/plugins/contacts/spec/feeds/flickr/auth.getFrob.xml 
#  deleted: vendor/plugins/contacts/spec/feeds/flickr/auth.getToken.xml 
#  deleted: vendor/plugins/contacts/spec/feeds/google-many.xml 
#  deleted: vendor/plugins/contacts/spec/feeds/google-single.xml 
#  deleted: vendor/plugins/contacts/spec/feeds/wl_contacts.xml 
#  deleted: vendor/plugins/contacts/spec/feeds/yh_contacts.txt 
#  deleted: vendor/plugins/contacts/spec/feeds/yh_credential.xml 
#  deleted: vendor/plugins/contacts/spec/flickr/auth_spec.rb 
#  deleted: vendor/plugins/contacts/spec/gmail/auth_spec.rb 
#  deleted: vendor/plugins/contacts/spec/gmail/fetching_spec.rb 
#  deleted: vendor/plugins/contacts/spec/rcov.opts 
#  deleted: vendor/plugins/contacts/spec/spec.opts 
#  deleted: vendor/plugins/contacts/spec/spec_helper.rb 
#  deleted: vendor/plugins/contacts/spec/windows_live/windows_live_spec.rb 
#  deleted: vendor/plugins/contacts/spec/yahoo/yahoo_spec.rb 
#  deleted: vendor/plugins/contacts/vendor/windowslivelogin.rb 

Le problème est que je ne supprimé aucun de ces fichiers, juste git pense que je l'ai fait. Ma solution de contournement est de faire "git add vendeur/plugins/contacts/" et "git ajouter vendeur/plugins/blackbook/" à chaque fois avant de commettre mais c'est terrible. Quelqu'un peut-il donner des directives à ce sujet?

MISE À JOUR:

Merci aux commentaires, je l'ai compris la plupart du problème. Je n'ai jamais traité mes plugins comme des sous-modules, même s'ils étaient contrôlés à la source. Jusqu'à présent, j'ai supprimé SCM du plugin blackbook (je n'en ai pas vraiment besoin ou je ne le veux pas). Et je l'ai enlevé les contacts et entièrement fait:

git submodule add repo_address local_address 
git submodule init 
git submodule update 
git add vendor/plugins/contacts 
git add . 
git commit -m "submodule should be committing now" 

mais maintenant le problème est que si le code du plugin de contacts existe dans mon repo local. Je n'arrive pas à m'engager dans mon repo distant. même après "git add". ou plus explicitement "git add vendor/plugins/contacts" .... des idées ici?

Merci!

+0

ajouté quelques suggestions centrées sur le thème de sous-modules – VonC

Répondre

11

Bizarre. Vous avez un blog entry qui signale exactement le même problème. Avec des sous-modules, comme mentionné dans Dave's answer.

Cela a été fixé uniquement en retirant le contrôle de version sur le répertoire « restful_authentication »:

.~/projects/bushi2do master $ rm -rf vendor/plugins/restful_authentication/.git 
.~/projects/bushi2do master $ git add . 
.~/projects/bushi2do master $ git status 
# On branch master 
nothing to commit (working directory clean) 

L'inconvénient de ce correctif est que vous ne pouvez plus « git pull » sur les le répertoire du plugin pour récupérer les mises à jour.


Que diriez-vous

git rm --cached vendor/plugins/contacts 
git rm --cached vendor/plugins/blackbook 

? Et comment avez-vous déclaré vos sous-modules dans votre répertoire de plugins? Parce que je me souviens d'une prise classique avec sous-modules.
Si vous utilisez des sous-modules git, ne faites pas git add foo/ (observez ce slash!) Si foo est votre sous-module. Ça devient salissant.

De here:

Lorsque vous utilisez git ajouter un sous-module, assurez-vous que vous ne disposez pas d'une barre oblique de résidus miniers.

> git add local/path 
    -- adds the submodule 

> git add local/path/ 
    -- adds all the files in the submodule directly into your repository, big no-no 
+0

vous avez raison sur le problème et merci pour le code pour supprimer scm d'un rm git Module – Tony

+0

--cached fournisseur/plugins/contacts va supprimer le plugin que je ne veux pas faire. Je n'ai même pas pris la peine de sous-modules parce que je ne savais pas que je devais. Je viens de faire un clone git dans mon répertoire vendeurs/plugins. donc je suis en train d'apprendre cela à la dure. le problème principal que je vois maintenant est un tas de "pas de sous-module trouvé dans .gitmodules pour le chemin ..." git voit probablement que j'ai git repos dessous mais pas défini comme sous-modules (donc il n'a pas de repo à mettre à jour). ....Travaille toujours dessus. – Tony

1

Je ne peux pas vous le dire avec certitude, mais je vérifierais si le problème est lié au fait que les plugins "blackbook" et "contacts" soient spécifiés comme sous-modules git.

+0

c'est vraiment le problème, à la recherche dans une solution – Tony

Questions connexes