Ich versuche, das Remote-Repo mit dem lokalen Repo zu synchronisieren, erhalte jedoch folgende Fehler. Einige Dateien (ohne Dateierweiterung) werden auf einem WINDOWS-Computer nicht mit dem lokalen Repository synchronisiert, aber auf einem MAC-Computer konnte die Synchronisierung erfolgreich durchgeführt werden.
Gibt es Konfigurationseinstellungen in WINDOWS, um diesen Fall zu behandeln?
FEHLERDETAILS
git.exe clone --progress -v "https://github.com/xxxx/xxxxx.git" "C:\Data\GitHub\simility\vishesh-common"
Cloning into 'C:\Data\GitHub\simility\vishesh-common'...
POST git-upload-pack (200 bytes)
remote: Counting objects: 3912, done.
remote: Compressing objects: 100% (487/487), done.
Receiving objects: 100% (3912/3912), 2.70 MiB | 567.00 KiB/s, done.
Resolving deltas: 100% (1578/1578), done.
remote: Total 3912 (delta 409), reused 0 (delta 0)
Checking connectivity... error: unable to create file kickstarter/parsers/data/kickstarter/campaigndetails/_projects_1030050305_fantasy-trilogy-spin?ref=users (Invalid argument)
error: unable to create file kickstarter/parsers/data/kickstarter/campaigndetails/_projects_1030295038_laser-dogs?ref=users (Invalid argument)
error: unable to create file kickstarter/parsers/data/kickstarter/campaigndetails/_projects_1030315317_arizona-native-bird-painting-series?ref=users (Invalid argument)
error: unable to create file kickstarter/parsers/data/kickstarter/campaigndetails/_projects_1030315317_native-birds-ii?ref=users (Invalid argument)
error: unable to create file kickstarter/parsers/data/kickstarter/campaigndetails/_projects_1030552097_ikeyboard-0?ref=users (Invalid argument)
error: unable to create file kickstarter/parsers/data/kickstarter/campaigndetails/_projects_1030552097_ikeyboard?ref=users (Invalid argument)
error: unable to create file kickstarter/parsers/data/kickstarter/campaigndetails/_projects_1030552097_only-you-can-prevent-computercide?ref=users (Invalid argument)
error: unable to create file kickstarter/parsers/data/kickstarter/campaigndetails/_projects_1030552097_vector-cupholder-protect-your-laptop-and-your-lap?ref=users (Invalid argument)
error: unable to create file kickstarter/parsers/data/kickstarter/campaigndetails/_projects_103055429_death-of-an-angel?ref=users (Invalid argument)
error: unable to create file kickstarter/parsers/data/kickstarter/campaigndetails/_projects_1030650665_rachel-vanslyke-making-a-new-record-together-we-ca?ref=users (Invalid argument)
error: unable to create file kickstarter/parsers/data/kickstarter/campaigndetails/_projects_1030835091_russian-trucks-of-world-war-two?ref=users (Invalid argument)
error: unable to create file kickstarter/parsers/data/kickstarter/campaigndetails/_projects_1031873800_prop-expansion-next-level?ref=users (Invalid argument)
error: unable to create file kickstarter/parsers/data/kickstarter/campaigndetails/_projects_1031873800_prop-project-expansion?ref=users (Invalid argument)
error: unable to create file kickstarter/parsers/data/kickstarter/campaigndetails/_projects_1099860912_yaw-clock?ref=users (Invalid argument)
error: unable to create file kickstarter/parsers/data/kickstarter/campaigndetails/_projects_1099992656_heavenly-sight-a-vision-out-of-blindness?ref=users (Invalid argument)
fatal: unable to checkout working tree
warning: Clone succeeded, but checkout failed.
You can inspect what was checked out with 'git status' and retry the checkout with 'git checkout -f HEAD'
git did not exit cleanly (exit code 128) (21746 ms @ 29-09-2014 13:32:13)
Wenn ich das Protokoll gut lese, haben diese Dateien Namen, die mit "? Ref = users" enden.
Windows erlaubt es Ihnen nicht, ein '?' in einem Dateinamen, so wie es nicht erlaubt, ein "\" oder "*" zu haben. Unter Linux ist es möglich, wenn Sie diese Zeichen entkommen. Unter Windows ist das meines Erachtens überhaupt nicht möglich. Siehe http://msdn.Microsoft.com/en-us/library/windows/desktop/aa365247
Sie werden es mit solchen Namen schwer haben. Ich kann mir keine Idee einfallen lassen, mit der Sie das 1: 1 synchronisieren könnten. Sie können sie sicherlich abrufen und unter sicheren Namen wie _projects_1099992656_heavenly-sight-a-vision-out-of-blindness__ref=users
Speichern, aber ich weiß nicht, wie ich das automatisch machen soll oder wie ich Git später über dieses Mapping informieren soll, sorry.
Diese Dateinamen sehen so aus, als ob ihnen HTML-Abfrageparameter angefügt sind. Ist es wirklich erforderlich? Vielleicht ist das nur ein Artefakt, das entfernt werden könnte? Versuchen Sie, mit den Betreuern des Projekts zu sprechen. Vielleicht können sie dieses ungerade Suffix einfach entfernen.
Ich bin auf dasselbe Problem gestoßen, wollte diese Dateien jedoch nicht umbenennen oder löschen. Hier ist eine Problemumgehung für den Fall, dass Sie ohne Zugriff auf diese Dateien mit einem Sparse-Checkout leben können:
Gehen Sie in Ihrem Repo in den Ordner .git
Und öffnen Sie die Datei config
. (Sie können Ihre Konfiguration auch mit tortoise-git bearbeiten, aber ich habe sie hier nicht installiert.) Fügen Sie im Abschnitt [core]
Die Zeile hinzu
sparsecheckout = true
dann gehe in den Ordner .git/info
und erstelle die Datei sparse-checkout
. Füge so etwas wie hinzu
*
!kickstarter/parsers/data/kickstarter/campaigndetails/*
Die erste Zeile enthält alles, während die zweite alle Dateien in kickstarter/parsers/data/kickstarter/campaigndetails/
Ausschließt. Sie sollten nun in der Lage sein, das Repo auszuchecken. Mit Platzhaltern können Sie wahrscheinlich anspruchsvollere Ausschlüsse machen.
Ich benutze Bitbucket und es hat die Funktion, dass Sie eine Problemdatei löschen können.
Das ist was ich mache.