新しいラップトップを手に入れましたが、大学のgitリポジトリをpycharm
で複製したいと思っていました。
Git bash/GUIまたはPycharmを使用してリポジトリを複製しようとすると、エラーで失敗します。
ツリーエントリのファイル名にバックスラッシュが含まれています: 'Aufgabe4a.py#coding = utf-8 ...
エラー内には、言及されたファイルの完全な内容があります。
これは私の大学のリポジトリなので、自分のものではないファイルの名前を変更することはできません。 奇妙なことに、これは私のデスクトップでは起こりません。私はそこでレポをうまくクローンできます。
演習を行うにはこのリポジトリが必要であり、常にデスクトップにアクセスできるわけではないので、皆さんの提案を楽しみにしています。
編集:名前にバックスラッシュを含む単一のファイルがリポジトリにありません。ウェブサイトとiOSのアプリである「working copy」をチェックして、Gitリポジトリをプレビューしました。
ラップトップでGitを使用してデバッグした結果は次のとおりです。
18:28:45.034704 exec-cmd.c:237 trace: resolved executable dir: C:/Program Files/Git/mingw64/bin
18:28:45.036676 git.c:439 trace: built-in: git clone git@*removed*.git
Cloning into 'uebungen'...
18:28:45.093121 run-command.c:663 trace: run_command: unset GIT_DIR; ssh git@*university URL* 'git-upload-pack '\''*university repo*'\'''
18:28:48.140893 run-command.c:663 trace: run_command: git index-pack --stdin -v --fix-thin '--keep=fetch-pack 8492 on DESKTOP-QNIF5QA' --check-self-contained-and-connected
18:28:48.155482 exec-cmd.c:237 trace: resolved executable dir: C:/Program Files/Git/mingw64/libexec/git-core
18:28:48.157663 trace.c:375 setup: git_dir: C:/Users/*removed*/uebungen/.git
18:28:48.157663 trace.c:376 setup: git_common_dir: C:/Users/*removed*/uebungen/.git
18:28:48.157663 trace.c:377 setup: worktree: C:/Users/*removed*
18:28:48.157663 trace.c:378 setup: cwd: C:/Users/*removed*
18:28:48.157663 trace.c:379 setup: prefix: (null)
18:28:48.158012 git.c:439 trace: built-in: git index-pack --stdin -v --fix-thin '--keep=fetch-pack 8492 on DESKTOP-QNIF5QA' --check-self-contained-and-connected
remote:
remote: Enumerating objects: 828, done.
remote:
(...)
remote: Counting objects: 100% (828/828), done.
remote:
(...)
remote:
remote: Compressing objects: 100% (380/380), done.
remote: Total 1184 (delta 490), reused 725 (delta 430)
error: filename in tree entry contains backslash: 'Aufgabe4a.py# coding=utf-8
import random #Liste für die Auswahlmöglichkeiten für den Rechner list = ["Schere", "Stein", "Papier"] #Eingabemöglichkeit für den Benutzer print("Versuchen Sie ihr Glück in Schere, Stein, Papier!") w = (raw_input("Bitte wählen sie Schere, Stein, oder Papier:")) # if w == "Schere": print("Sie haben Schere gewaehlt!\n") else: if w == "Stein": print("Sie haben Stein gewaehlt!\n") else: if w == "Papier": print("Sie haben Papier geweahlt!\n") else: print("Sie haben keine zugelassene Eingabe getaetigt!") exit() #Wahl des Rechners wird, sowie der Ausgang des Spiels entschieden x = list[random.randint(0, 2)] print("Ihr Gegner hat " + x + " gewaehlt!\n") if w == "Schere": if x == "Schere": print("Sie haben unentschieden gespielt!") else: if x == "Stein": print("Stein schleift Schere, Sie haben verloren!") else: if x == "Papier": print("Schere schneidet Papier, Sie haben gewonnen!") Elif w == "Stein": if x == "Schere": print("Stein schleift Schere, Sie haben geweonnen!") Elif x == "Stein": print("Sie haben unentschieden gespielt!") Elif x == "Papier": print("Papier umfaltet Stein, Sie haben verloren!") Elif w == "Papier": if x == "Schere": print("Schere schneidet Papier, Sie haben verloren!") Elif x == "Papier": print("Sie haben unentschieden gespielt!") Elif x == "Stein": print("Papier umfaltet Stein, Sie haben gewonnen!")'
fatal: Not all child objects of 9(...)c are reachable
fatal: index-pack failed
これはデスクトップマシンのデバッグ出力です。
21:38:07.768170 exec-cmd.c:237 trace: resolved executable dir:C:/Program Files/Git/mingw64/bin
21:38:07.769170 git.c:440 trace: built-in: git clone git@*uni repo*.git
Cloning into 'uebungen'...
21:38:07.783173 run-command.c:663 trace: run_command: unset GIT_DIR; ssh git@*uni domain* 'git-upload-pack '\''*repo*.git'\'''
21:38:08.587244 run-command.c:663 trace: run_command: git index-pack --stdin -v --fix-thin '--keep=fetch-pack 14672 on Leo-PC' --check-self-contained-and-connected
21:38:08.602247 exec-cmd.c:237 trace: resolved executable dir: C:/Program Files/Git/mingw64/libexec/git-core
21:38:08.604247 trace.c:377 setup: git_dir: C:/Users/*removed*/uebungen/.git
21:38:08.604247 trace.c:378 setup: git_common_dir: C:/Users/*removed*/uebungen/.git
21:38:08.604247 trace.c:379 setup: worktree: C:/Users/*removed*
21:38:08.604247 trace.c:380 setup: cwd: C:/Users/*removed*
21:38:08.604247 trace.c:381 setup: prefix: (null)
21:38:08.604247 git.c:440 trace: built-in: git index-pack --stdin -v --fix-thin '--keep=fetch-pack 14672 on Leo-PC' --check-self-contained-and-connected
remote:
remote: Enumerating objects: 852, done.
(...) remote: Counting objects: 100% (852/852), done.
(...) remote: Compressing objects: 100% (373/373), done.
remote: Total 1208 (delta 508), reused 792 (delta 461)
Receiving objects: 100% (1208/1208), 6.24 MiB | 36.54 MiB/s, done.
Resolving deltas: 100% (680/680), done.
21:38:09.614724 run-command.c:663 trace: run_command: git rev-list --objects --stdin --not --all --quiet --alternate-refs '--progress=Checking connectivity'
21:38:09.628565 exec-cmd.c:237 trace: resolved executable dir: C:/Program Files/Git/mingw64/libexec/git-core
21:38:09.630566 trace.c:377 setup: git_dir: C:/Users/*removed*/uebungen/.git
21:38:09.630566 trace.c:378 setup: git_common_dir: C:/Users/*removed*/uebungen/.git
21:38:09.630566 trace.c:379 setup: worktree: C:/Users/*removed*
21:38:09.630566 trace.c:380 setup: cwd: C:/Users/*removed*
21:38:09.630566 trace.c:381 setup: prefix: (null)
21:38:09.630566 git.c:440 trace: built-in: git rev-list --objects --stdin --not --all --quiet --alternate-refs '--progress=Checking connectivity'
21:38:09.639568 chdir-notify.c:65 setup: chdir from 'C:/Users/*removed*' to 'C:/Users/*removed*/uebungen'
21:38:09.639568 chdir-notify.c:40 setup: reparent packed-refs to 'C:/Users/*removed*/uebungen/.git/packed-refs'
21:38:09.639568 chdir-notify.c:40 setup: reparent files-backend $GIT_DIR to 'C:/Users/*removed*/uebungen/.git'
21:38:09.639568 chdir-notify.c:40 setup: reparent files-backend $GIT_COMMONDIR to 'C:/Users/*removed*/uebungen/.git'
(今のところ)Git for Windows 2.23.0にダウングレードすることで問題を修正しました。問題は最新バージョンでも解消されず、デスクトップでも再現可能です。