Научиться использовать Subversion - PullRequest
18 голосов
/ 24 сентября 2008

Это, вероятно, действительно глупый вопрос для начинающих разработчиков, но я в растерянности :( Я пытался научиться использовать Subversion для хранения истории моего кода, но я ' Я нахожу это довольно запутанным. Я прочитал «книгу», которая поставляется вместе с Subversion, но я не нашел в этом ничего полезного. Я пользуюсь Windows и скачал графический интерфейс TortoiseSVN для него.

Все, что я действительно хочу знать, как это сделать, это создать новый проект, поместить в него файл (любой старый файл), а затем обновить этот файл, просто чтобы я мог видеть, как он работает. Я создал 'репозиторий' (в svn_repository / test), и если кто-нибудь мог бы сказать мне, как я собираюсь создать новый файл / поместить в него файл, а затем обновить этот файл, я был бы действительно счастлив: Зная мою удачу, это будет что-то такое же простое, как «перетащить файл в каталог». Извиняюсь за такой глупый вопрос!

Кроме того, если бы кто-нибудь мог рассказать мне, как заставить его работать с Zend Studio, это были бы дополнительные потрясающие очки. Спасибо!

Ответы [ 9 ]

11 голосов
/ 24 сентября 2008

Рекомендуемая структура каталогов для хранилища Subversion содержит три папки: «ветки», «теги» и «ствол». Итак, создайте эти папки где угодно, в новой папке.

Щелкните правой кнопкой мыши в родительской папке этих папок, перейдите в TortoiseSVN и выберите Импорт. Введите URL для репозитория, который вы здесь создали (т.е. _ https://JUNK:8443/svn/Test/ - это то, что я только что сделал на моей локальной машине). Нажмите кнопку ОК, и папки будут импортированы.

Теперь найдите, где вы хотите разместить репо на вашем локальном компьютере (я пошел в C: \ workspace \ test). Щелкните правой кнопкой мыши и перейдите к SVN Checkout.

Теперь вы хотите получить из хранилища репо, поэтому измените URL хранилища, чтобы отразить это (https://JUNK:8443/svn/Test/trunk/). Нажмите кнопку ОК.

Создать новый файл в этом каталоге. Щелкните правой кнопкой мыши на нем и перейдите в TortoiseSVN, затем нажмите Добавить. Хит хорошо, и файл теперь помечен как новый файл для репо. Щелкните правой кнопкой мыши в родительской папке файла, и вы должны увидеть SVN Update и SVN Commit. Обновление SVN обновит локальные файлы файлами из хранилища. SVN Commit отправит локальные файлы, которые были изменены, обратно в хранилище.

Веселитесь:)

5 голосов
/ 24 сентября 2008

Вы просили проект с одним файлом, так что вот оно. Я не достаточно знаком с Tortoise, чтобы запускать вас таким образом, но я перечислю команды, и, надеюсь, вы сами поймете, как выполнить каждый шаг, щелкнув правой кнопкой мыши в проводнике. На самом деле есть только пять вещей, которые вам нужно сделать: создать репозиторий, проверить, «добавить» файл, чтобы сделать его управляемым версией, зарегистрироваться и войти в систему. Остальное придет позже.

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

# create an empty repository
svnadmin create myrepos

# check out a working copy of the empty repository
svn co file://full/path/to/myrepos workingcopy

# create an empty file in workingcopy (nothing to do with SVN - use 
# File > New > Text Document if you like)
cd workingcopy
touch mycode

# place it under version control, then tell the repository what you've done.
svn add mycode
svn ci -m "My first ever checkin comment! File created."

# Now we're developing. Go edit the file. Come back when you're done.

# Check it back in
svn ci -m "First version of project"

# Go edit it again

# Check it in again
svn ci -m "Made my project better"

# See what we've done so far
svn log mycode

Вот и все. Это необходимый минимум для контроля версий одного файла. Теперь перечитайте начало книги SVN, удалите myrepos и начните все сначала, потому что вы, вероятно, захотите структурировать свой первый правильный репозиторий так, как он вам скажет.

5 голосов
/ 24 сентября 2008

Часто, когда я создаю новый проект, мне приходится обращаться к руководству SVN Quickstart .

Это займет вас через создание нового репозитория, начальный импорт, и как проверить ваши файлы и обратно (в командной строке).

Книга очень полезна, но вы сможете извлечь из нее максимальную пользу после того, как вы некоторое время используете систему контроля версий и лучше поймете ее концепции.

(обратите внимание на терминологию, выделенную жирным шрифтом ниже)

Если вы используете TortoiseSVN, вам придется создать хранилище, а затем импортировать ваши файлы (если они у вас есть) при запуске. После этого вы извлекаете проект в рабочую папку и можете просто создавать файлы в рабочей папке, а затем добавлять их легко. После создания хранилища вы взаимодействуете только через него через клиент Subversion.

3 голосов
/ 24 сентября 2008

Мне действительно нравится использовать AnkhSvn в сочетании с черепахой. Это работает от Visual Studio. Когда я настраивал свой собственный репозиторий, я использовал VisualSVN, который занимал 2 секунды, и не включал в себя какие-либо apache или LAMP. Просто работал из коробки. Что касается его использования, попробуйте бесплатную онлайн-книгу, чтобы понять, что такое контроль версий. Затем перейдите на веб-сайт, например http://blog.taragana.com/index.php/archive/5-minutes-guide-to-subversion/, чтобы получить краткое руководство по его использованию.

3 голосов
/ 24 сентября 2008

Посмотрите на этот вопрос , у него есть несколько хороших указателей, начиная с svn

1 голос
/ 24 сентября 2008

Prags написал хорошую книгу по использованию Subversion: http://www.pragprog.com/titles/svn2/pragmatic-version-control-using-subversion

1 голос
/ 24 сентября 2008

В SVN Book есть приложение под названием «Краткое руководство по Subversion», которое быстро знакомит с основами. Вот краткий обзор.

Для начальной настройки я создаю временную папку на сервере SVN, где я настраиваю структуру своего сайта. Это просто временная папка, и я удаляю ее, как только я выполнил начальную настройку. Я обычно называю это что-то вроде C: \ tmpRepository. Затем я создаю новую папку для моего проекта. Допустим, ваш проект называется test. Я бы создал c: \ tmpRepositories \ test. Внутри этой папки создайте три папки: ветви, метки, ствол. Затем скопируйте файлы вашего проекта в директорию транка.

Теперь откройте командную строку и введите следующую команду, чтобы создать новый репозиторий. svnadmin создать c: \ AppRepositories \ test. Я просто храню весь свой исходный код в папке AppRepositories, а затем просто настраиваю каждый проект с новой папкой.

Далее нам нужно загрузить наш новый репозиторий с файлами в нашем временном каталоге. Итак, с открытой командной строкой мы запускаем: svn import c: \ tmpRepositories \ test file: /// c: / AppRepositories / test -m "начальный импорт"

Вот и все! Затем на компьютере разработчика вы должны установить TortoiseSVN. Вы захотите настроить место на вашем компьютере, где вы будете хранить рабочую копию ваших файлов. Обычно я просто создаю папку на диске C: с именем «WorkingCode». Откройте эту папку, щелкните правой кнопкой мыши и выберите SVN Checkout. Под URL-адресом хранилища введите svn: // имя_сервера / test. Убедитесь, что каталог оформлен правильно.

БАМ! Теперь вы должны увидеть все ваши файлы кода в каталоге соединительных линий (c: \ workingcode \ test \ trunk).

1 голос
/ 24 сентября 2008

Хранилище - это место, где сама Subversion управляет файлами - вы не получите прямой доступ к файлам в хранилище. Если вы создали репозиторий, то следующий шаг - сделать извлечение из репозитория в какой-либо рабочий каталог. (Этот рабочий каталог не должен быть подкаталогом хранилища.)

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

0 голосов
/ 24 сентября 2008

Я обнаружил, что TortoiseSVN ужасно сбивает с толку, особенно в связи с Книгой SVN. Но опять же, я не очень ориентирован на GUI.

Работайте с книгой с помощью командной строки SVN-клиента, пока не поймете основные понятия. Не пропустите ни одной главы!

Тогда вы можете оценивать GUI, если к тому времени он вам даже нужен.

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