Как работать с ветками в XCode (SVN) - PullRequest
1 голос
/ 01 февраля 2011

Я успешно настроил SVN и XCode, это действительно круто! Я фиксирую, обновляю, даже помечаю (хотя в Терминале ...)! Все это довольно легко Сейчас я бы хотел работать с разными ветками, но я немного запутался.

Я следовал этому руководству , и в нем есть раздел о ветвлении. Что он говорит, это использовать этот скрипт:

#!/bin/ksh
# A script to branch a SVN trunk
reporoot=/Library/Subversion/Repository/
projdir=Projects

# Prompt for repository name
print -n "Enter repository name:"
read repo

# Prompt for project name
print -n "Enter project name:"
read project

# Prompt for branch name
print -n "Enter branch name:"
read branch

# Create branch
svn copy file://$reporoot/$repo/$projdir/$project/trunk file://$reporoot/$repo/$projdir/$project/branches/$branch -m "Creating a branch of the ‘$project‘ project."

echo
echo Creation of a branch of the $project project complete!
echo

Но то, что я вижу, это просто сценарий оболочки, который копирует текущий ствол в ветку (например, тег). И поэтому, если я сделаю это, я все еще буду совершать в багажнике нет?

Есть ли у вас идея, как можно легко "переключаться" между ветвями, обновлять и фиксировать?

Большое спасибо.

Ответы [ 3 ]

2 голосов
/ 01 февраля 2011

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

Я не уверен, нравится ли Xcode это или нет.

1 голос
/ 18 марта 2011

Я бы использовал Git поверх SVN и использовал GitX.Вам будет намного легче работать с ветками, особенно если вы хотите использовать их практически и не тратить полчаса на слияния.Интеграция XCode3 SCM не особенно полнофункциональна.Если это вообще возможно, я бы попробовал XCode4 с Git, клонировал и добавил вендорные библиотеки в качестве подмодулей.(По состоянию на 2012 год это все немного SOP).

Вы всегда можете использовать git svn команды ( пример учебника ).

Также есть Objective-C .gitignore Github project .Наличие Git репо только физически в корне проекта также является большим плюсом.

1 голос
/ 17 марта 2011

Попробуйте XCode 4, он позволяет создавать ветви, переключать и объединять их в полном режиме, а не так, как это делал XCode 3.

ОБНОВЛЕНО: Вы должны использовать svn switch после создания новой ветки. Он обновит вашу рабочую копию.

Пример:

svn switch http://slitvinov@192.168.1.117:8080/svn/alb.iphone/Branches/SuperFastAlgo

Полное описание здесь

...