Можете ли вы сохранить локальный репозиторий Git на другом диске, чем рабочий каталог? - PullRequest
0 голосов
/ 11 июня 2018

Я работаю с играми (Unity 3D), которые содержат массивные двоичные файлы, которые переполняют мой Git-репозиторий (даже с LFS).Мне нужно, чтобы мой рабочий каталог находился на моем быстром диске M.2, чтобы мой рабочий конвейер был плавным, но на моем M.2 очень ограниченное пространство, поэтому мне нужно сохранить огромный локальный репозиторий .git на другом SSD-диске.что я использую для хранения.Можно ли поместить огромный каталог репозитория .git на другой диск?

1 Ответ

0 голосов
/ 14 июня 2018

Edit: После такой работы с Git в течение некоторого времени я пришел к выводу, что разбиение рабочего каталога может вызвать некоторые странные ошибки.Как только я вернулся к стандартной настройке (репозиторий в том же каталоге, что и рабочий каталог), у меня больше не было ошибок.Я оставлю свои заметки ниже на тот случай, если кому-то будет интересно, как я их настроил, но я не рекомендую делать это.

После некоторых исследований я нашел два источника, которые помогли мне найти решение, но у меня были проблемы с аутентификацией, которые мешали им работать.В конце концов я понял, как просто сделать это вручную без необходимости использования консольных команд.По сути, я сделал это:

  1. Найдите папку .git в рабочем каталоге (весь репозиторий находится в этой единственной папке)
  2. Вырежьте и вставьте папку .git в папку, которую выхотите, чтобы он хранился (например, на накопителе)
  3. В папке .git найдите файл конфигурации.Откройте его в текстовом редакторе, таком как Notepad ++.
  4. В разделе [core] определите рабочий каталог с рабочим деревом.Пример:

    worktree = C: / MyProjects / MyGitWorkingTree

Весь раздел [core] может выглядеть примерно так:

[core]
    bare = false
    repositoryformatversion = 0
    filemode = false
    symlinks = false
    ignorecase = true
    logallrefupdates = true
    worktree = C:/MyProjects/MyGitWorkingTree
[remote "origin"]
    [... the rest of the file is down here...]

Вернитесь в свой рабочий каталог (каталог, из которого вы взяли папку .git) и создайте новый файл с именем .git.В Windows, чтобы сделать это, вам нужно назвать файл .git.(обратите внимание на последнюю точку в конце)

Откройте новый файл .git, который вы создали с помощью текстового редактора (например, Notepad ++).Он должен быть полностью пустым при открытии, поскольку это новый файл.

Введите новую строку, которая является точным путем к каталогу git, который вы переместили на шаге 2. Пример:

gitdir: D: \ MySeparatedGitRepo \ .git

И если вы выполните эти шаги выше, у вас должно быть отдельное git-репо, которое работает как любое обычное репо без необходимостиинструменты командной строки.

Как примечание, я лично указывал свои инструменты с графическим интерфейсом для чтения из фактического git-репо на диске хранения, но я думаю, что вы также можете указать их на рабочий каталог.Они просто указывают друг на друга, если я правильно понимаю.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...