Можно ли установить git remote url для подпапки в хранилище? - PullRequest
0 голосов
/ 21 мая 2018

Для репозитория (скажем, «тест»), который имеет структуру папок как

├── Project1
├── Project2
├── Project3

МожетЯ установил удаленный URL только для проекта1?

Ответы [ 4 ]

0 голосов
/ 21 мая 2018

Если вы хотите клонировать подкаталог, этот вопрос / ответ StackOVerflow говорит "нет".

Если вы ищете коммит в подкаталоге, тогда ответ - да.

  1. Внесите изменения в подкаталог

  2. Затем выполните следующую команду, чтобы увидеть, какие изменения были сделаны:

    git status

  3. Вы увидите сделанные вами изменения, например:

    изменены: application / Email.php изменены: application / Config.php

  4. чтобы добавить изменения, сделайте это в командной строке:

    git add application / *

  5. Передайте изменения следующим образом:

    git commit -m "Добавить поддержку по электронной почте в приложение"

  6. Когда вы работаете на GitHub , GitLab или аналогичной платформе, нажмитеизменения в удаленном репозитории:

    мастер отправки git push

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

0 голосов
/ 21 мая 2018

Да.Вы можете.Используйте подмодули GitHub: https://blog.github.com/2016-02-01-working-with-submodules/

0 голосов
/ 21 мая 2018

Чтобы создать удаленный репозиторий для вашего Проекта 1, я думаю, вам нужно начать с локальной настройки его как отдельного репозитория.Как указывает Торек, в git «удаленные» сопоставляются с «репо» - вы можете управлять своими коммитами, чтобы включать только обновления в каталог Project 1, но на самом деле это не отдельный пульт.

Если вы настроили каталог Project 1 как отдельный репозиторий git, вы можете добавить к нему удаленный.Чтобы поместить его в дерево каталогов, вы можете: a.) Использовать символические ссылки в основном дереве проекта для указания на каталог Project 1;б.) добавьте его в свой основной проект в качестве подмодуля.

Более подробную информацию о подмодулях вы можете получить в документации или в Мастеринг подмодулей Git.

0 голосов
/ 21 мая 2018

Нет и да.То есть вы можете установить это, но оно не будет делать то, что вы хотите, что бы это ни было.

A remote - это просто короткое имя, которое действует какключ:

  • origin => remote.origin.url, remote.origin.fetch
  • xyz => remote.xyz.url, remote.xyz.fetch

и так далее.Вы можете установить url для каждой такой клавиши на что угодно: https://example.com/path/to/repo или /local/path или jellybeans или что угодно, но вещи, которые используют это значениеgit fetch, git push и git ls-remote.Все они связываются с другим репозиторием Git по указанному URL и передают коммиты (не файлы) туда-сюда или, в случае git ls-remote, сообщают вам, какие коммиты и имена веток доступны.

Так как git fetch и git push передают полные коммиты , файлы приходят вместе с коммитами для поездки, но у них есть имена, которые вы дали им в коммитах .

Однако вы можете делать коммиты, содержащие только файлов в Project1.Проверка такого коммита удалит всех Project2 и Project3 файлов, а затем проверка коммита, содержащего все файлы, вернет всех Project2 иProject3 файлов.Но когда вы запускаете git push или git fetch, вы, скорее всего, будете отправлять и получать коммиты, содержащие все файлов вместе с коммитами, которые содержат только Project1 файлытак что это, вероятно, не очень хорошая идея.

Если вы храните каждый проект в отдельном репозитории Git, это, вероятно, даст вам то, что вы хотите.Хотя я обычно рекомендую избегать подмодулей, вы можете сделать каждый из этих репозиториев подмодулем одного суперпроекта , который ничего не делает, кроме как координирует все подмодули;этот конкретный путь работоспособен.

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