Можно ли сделать так, чтобы git svn & # 8220; relocate & # 8221; файлы ветки на кассе?

StackOverflow https://stackoverflow.com/questions/173621

  •  05-07-2019
  •  | 
  •  

Вопрос

В нашем хранилище svn есть много веток, которые являются ветвями поддеревьев. Это нормально работает с SVN, потому что я могу проверить это поддерево в правильном месте в моей рабочей копии. Однако, если я проверяю ту же ветку с помощью git, я получаю рабочую копию только с поддеревом ветви. Можно ли заставить git переместить ветку так, чтобы моя структура рабочей копии была одинаковой, независимо от того, нахожусь ли я на стволе или на ветке?

Я понимаю, что наши svn-практики конфликтуют с философией git всегда работать над всем деревом. Как люди справляются с этим?

Это было полезно?

Решение

Если возможно, исправьте это на стороне сервера: Subversion не копирует данные при ветвлении ( svn copy ), это просто жесткие ссылки, поэтому на самом деле нет очевидной причины разветвлять только поддерево.

Если это невозможно, вы должны взглянуть на http://help.github.com. / subtree-merge / - это может помочь, но я сам не пробовал. Он в основном описывает альтернативу подмодулям git, где вы просто автоматически объединяете удаленный (в данном случае вашу ветку Subversion) в подкаталог вместо корневого каталога хранилища.

Другие советы

Я никогда не использовал svn таким образом, и если молчание, которое вы получили, является каким-либо показателем, то это своего рода редкая практика. Не могли бы вы дать какое-то обоснование таким действиям, возможно, описав, какую проблему он решает? Таким образом, мы можем лучше судить о том, что будет приемлемым решением.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top