У меня был босс прошедшего времени, который решил поместить ветки svn в ту же папку, что и транк. Обычно это не сильно меня затрагивает, но, поскольку я использую git-svn, дела идут хорошо. После того, как я сделал выборку, он создал папку для каждой ветви в моей корневой папке, поэтому у меня есть три папки: drupal, trunk и client. Папка drupal - это основная ветка git, клиент и транк - это ветви svn.
Слияние и фиксация прекрасно работает, на самом деле все, что связано с git, работает превосходно. Однако dcommit полностью скрыт, он пытается зафиксировать папку с именем client и папку с именем trunk. Я даже не могу себе представить, какой хаос это вызовет для SVN позже.
Итак, мой вопрос: что я сделал не так в моем .git / config и могу ли я что-то сделать, чтобы это исправить, или мне придется страдать и вернуться к использованию SVN?
Пожалуйста, не заставляй меня возвращаться. Я не думаю, что смогу больше терпеть. Ублюдок босс знает как оставить наследство.
[svn-remote "svn"]
url = https://svn.mydomain.com/svn/project_name
fetch = trunk:refs/remotes/trunk
branches = *:refs/remotes/*
tags = tags/*:refs/remotes/tags/*
Обычно линия ветвления будет выглядеть так (при использовании --stdlayout):
branches = branches/*:refs/remotes/branches/*
Таким образом, вывод
ls:
$ ls
client/ docs/ drupal/ sql/ trunk/
git -a вывод:
* master
trunk
remotes/git-svn
remotes/trunk