помогите освоить TortoiseSVN

x15nicky

Новичок
помогите освоить TortoiseSVN

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

в соответствии с http://tortoisesvn.net/docs/nightly/TortoiseSVN_ru/tsvn-repository.html#tsvn-repository-create

1. создал папку d:\svn
2. в ней папку Ropository
3. в последней создал репозиторий через "Create repository here"
4. прокурил главу "Организация данных в хранилище" из указанного урла
проекты у меня несвязанные, потому выбрал упорядочивание по проектам.
далее иду по пунктам главы:
- создаю папку aaa
- в ней - папки tags, branches, trunk (хм. а если меня для своего проекта нужна будет папка tags например? как то совсем не красиво получается...)
- становлюсь на папку aaa и жму SVN export. экспорт 3 папок проходит успешно.
вот только ни самой папки, ни tags branches truck в d:\svn не появляется. впрочем, упоминание о папка появляется в файле d:\svn\repository\db\revs0\1. и repo-browser видит эти папки. упоминаний же папки aaa, то есть папки проекта и нет вовсе. сразу же возникает вопрос - а вот добавлю я еще один проект, и как оно будет различаться??

ну, впрочем, сначала разберемся с одним проектом. создаю файл aaa\file.php (в контексте нет команды Add File, создаю блокнотом) и хочу это зафиксировать, как очередную ревизию. по идее, надо б выдать Commit. да только его тоже нет в контекстном меню - при том, что в настройках я поставил флажки у всех команд, чтоб показывались.

вроде все делалось по интсрукции и вот, заткнулся. :( поможите, люди добрые...
 

zerkms

TDD infected
Команда форума
Неправильно ты дядя Фёдор бутерброд ешь :)

Репозиторий создаётся в одной директории (d:\svn) а проект - в другой (d:\project)
Затем - в проект делается checkout репозитория и собственно только после этого можно начинать работать с ним

ps: зачем ты хочешь в 1 репозитории держать несколько проектов? почему бы не создавать по одному на каждый?

pps: на уровне вброса: я бы ещё посоветовал сразу начинать разбираться с mercurial, а не с svn
 

varan

Б̈́̈̽ͮͣ̈Л̩̲̮̻̤̹͓ДͦЖ̯̙̭̥̑͆А͇̠̱͓͇̾ͨД͙͈̰̳͈͛ͅ
x15nicky

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

То место, где ты редактируешь, создаешь файлы и т.д. - это рабочая копия (не репозиторий), создаваемая командой checkout.
А потом, когда наизменяешь файлы, делаешь commit.
 

fixxxer

К.О.
Партнер клуба
я бы ещё посоветовал сразу начинать разбираться с mercurial, а не с svn
да ладно тебе :)

с свн на меркуриал в случае необходимости не так сложно перейти, надо просто понять принципиальную разницу между VCS и DVCS. Команды в целом очень похожи.
 

zerkms

TDD infected
Команда форума
с свн на меркуриал в случае необходимости не так сложно перейти
просто смысл сразу начинать svn использовать? почему не изучить "нормальный инструмент" и "доучить" svn. первым пользоваться всегда, вторым - когда иначе ну никак :)
 

Adelf

Administrator
Команда форума
zerkms
не учи людей жить :)
Имхо, svn - очень подходящий инструмент для освоения систем хранения сорцов. Юзеру, не любящему консоль вполне подойдет тандем VisualSVN(сервер) + TortoiseSVN(клиент).
 

zerkms

TDD infected
Команда форума
Adelf
ну вообще-то (пусть это звучит немного высокомерно) я могу позволить себе людей учить, благо есть чему.

теперь предметно: я пользовался 6 лет svn'ом (с 2004 до сих пор), я пользуюсь mercurial'ом 2 месяца, очень интенсивно. на основании вышесказанного я считаю, что первой SCM для изучения куда полезнее был бы mercurial, который я призываю сделать повседневным, а svn - опциональным, для случаев, когда выбирать не приходится.
для меркуриала точно так же есть tortoisehg, очень даже похожий на tortoisesvn.

а вот зачем ему сервер - я не совсем понял.

аргументы: вы даже не представляете насколько круто следовать практике feature branch, используя меркуриал. и вы даже не представляете (или представляете? а чего тогда советуете?!?) насколько это головняк, используя свн.

я кончил :)
 

varan

Б̈́̈̽ͮͣ̈Л̩̲̮̻̤̹͓ДͦЖ̯̙̭̥̑͆А͇̠̱͓͇̾ͨД͙͈̰̳͈͛ͅ
ну, поздравляю :)
 

fixxxer

К.О.
Партнер клуба
>>просто смысл сразу начинать svn использовать?

ну для себя я давно меркуриал юзаю.

а свн почти везде корпоративный стандарт, что уж поделаешь :) и подозреваю, что у ТС именно такая ситуация. ну и в любом случае, бранчить в свне надо уметь, хоть это и не самое приятное занятие =)
 

Adelf

Administrator
Команда форума
ну вообще-то (пусть это звучит немного высокомерно) я могу позволить себе людей учить, благо есть чему.
Очень за тебя рад :) Но я же говорил о поучении жизни :)
У человека конкретная задача - научиться использовать SVN. Возможно по вакансии какой-то это ему требуется или на работе надо как-то. А тут ты: забей на SVN, учи меркуриал/git/bazaar :) - это круто, я уже два месяца использую и рад :)
 

флоппик

promotor fidei
Команда форума
Партнер клуба
аргументы: вы даже не представляете насколько круто следовать практике feature branch, используя меркуриал. и вы даже не представляете (или представляете? а чего тогда советуете?!?) насколько это головняк, используя свн.
меркуриал, базаар, гит... особенно базаар. Хотя, наверно, это вопрос личных привычек? )
 

zerkms

TDD infected
Команда форума
Adelf
Возможно по вакансии какой-то это ему требуется или на работе надо как-то.
это лишь догадки :)

А тут ты: забей на SVN, учи меркуриал/git/bazaar - это круто
это и вправду круто. причём без пафоса - это объективно круто ;-)

Хотя, наверно, это вопрос личных привычек? )
угу, лишь бы не свн :)
 

fixxxer

К.О.
Партнер клуба
>>угу, лишь бы не свн :)

вот посадить бы тебя на диалап с cvs-ом на полгодика... %)
 

zerkms

TDD infected
Команда форума
fixxxer
как говорится, напугали ежа голой жопой ))
год жил на жпрсе в 3-4кбайт/с за 8р/мб. (да и сейчас 2200р за нечестные 1200кбит/с)
 

fixxxer

К.О.
Партнер клуба
та я не про скорость, а про обрыв связи во время коммита. :)
 

zerkms

TDD infected
Команда форума
fixxxer
ну да, а на жпрсе связь стабильная, дооооооо ))))
 

fixxxer

К.О.
Партнер клуба
с тогдашей шаговой атс, коммутированной, видимо, на скрутках и плевках, у меня жпрс был много стабильнее, да. :)

а git я, кстати, один раз попробовав, как-то сразу невзлюбил. я, конечно, понимаю, что Торвальдсу похрен, как выкладываьт на кернел.орг, но некий "центральный" репоз с разграничением write доступа иметь обычно хочется. Ну чтобы было, да. Ну и как-то ненормально, когда с единственным вариантом такой конфигурации через задн^W rsync все валится в корку. Я, конечно, ферштейн, что gdb в руки, но вот меркуриал завелся из коробки, притом преспокойно из коробки же все заработало over http с проксированием через nginx. :)
 

LONGMAN

Dark Side of the Moon..

zerkms

TDD infected
Команда форума
Если ты не будешь раздавать свн в сеть - тогда тебе не нужен сервер.
 
Сверху