Что управление исходным кодом должно мы использовать

Чтобы игнорировать пробелы в любой строке, вы можете использовать string.replace(" ", "")

Чтобы найти подстроку в строке, вы можете использовать string.find(substr)

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

s1= ' first words s t r i n g last words '
s2= 'string'

s1_nospace=s1.replace(" ", "")
s2_nospace=s2.replace(" ", "")

nospace_index=s1_nospace.find(s2_nospace)

isnt_space = [not (x==" ") for x in s1]
# Cumulative sum of isnt_space
chars_before = reduce(lambda c, x: c + [c[-1] + x], isnt_space, [0])[1:]

start_index = chars_before.index(nospace_index+1)
end_index = chars_before.index(nospace_index+len(s2_nospace))

# start_index == 13
# end_index == 23

Вы, конечно, могли бы немного его очистить и / или ускорить, но это должно выполнить задачу относительно читабельным способом.

6
задан kd7 20 November 2009 в 21:01
поделиться

18 ответов

Я рекомендую Subversion и TortoiseSVN . Даже документация для Subversion бесплатна.

Отредактировано, чтобы добавить: Я также настоятельно рекомендую VisualSVN Server настроить репозиторий SVN. Установка была несложной, и она была настолько беспроблемной, что мне пришлось пойти посмотреть, как она называется, потому что мне не приходилось трогать ее один раз с момента первоначальной настройки.

25
ответ дан 8 December 2019 в 02:08
поделиться

Вы пытались развлечься ( http://unfuddle.com/ ). Выполняет все ваши требования.

0
ответ дан 8 December 2019 в 02:08
поделиться

Если вы уверены, что собираетесь в Team Система, тогда я считаю, что есть 180-дневная пробная версия, которую вы можете использовать. Таким образом, вам не нужно переключаться.

0
ответ дан 8 December 2019 в 02:08
поделиться

Я должен был принять подобное решение несколько месяцев назад. Мне очень понравился SVN, но отсутствие графического интерфейса для администрации стало большой проблемой для моей команды. TFS был идеальным, но очень дорогим.

Мы решили пойти навстречу и получить лицензию SourceGear Vault . К сожалению, это не соответствует вашему требованию "бесплатно". Хотя я нашел его сравнение с SVN интересным.

0
ответ дан 8 December 2019 в 02:08
поделиться

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

По моему мнению, кроме бесконечного » git лучше, чем Subversion, лучше, чем CVS "-дискуссия. Я не думаю, что различия между ними имеют значение.

Более важно иметь кого-то, кто действительно знает, как использовать ту систему, которую вы решите использовать.

0
ответ дан 8 December 2019 в 02:08
поделиться

Настройка Subversion для разработки .Net стала проще. Вы можете начать с установки Visual SVN Server . Это установит Subversion Server на компьютер с Windows, проведет вас через настройку хранилища, аутентификацию и т. Д.

Затем для интеграции Visual Studio с Subversion вы можете попробовать VisualSVN , это не бесплатно, но стоит лицензия. Но если ваш бюджет этого не позволяет, Ankhsvn также отлично работает, я использую его каждый день.

0
ответ дан 8 December 2019 в 02:08
поделиться

Я второй SVN и TortoiseSVN.

Я перешел из CVS и WinCVS, и я очень доволен этой настройкой.

0
ответ дан 8 December 2019 в 02:08
поделиться

Вы пробовали SVN и использовали TortoiseSVN для расширения оболочки?

0
ответ дан 8 December 2019 в 02:08
поделиться

Еще один голос за SVN.
Для облегченного SVN-сервера в Windows посмотрите sliksvn . Он не выполняет просмотр исходного кода http, но его установка намного меньше и проще, чем серверы на основе Apache для небольших групп.

0
ответ дан 8 December 2019 в 02:08
поделиться

Дайте Mercurial шанс. BitBucket имеет бесплатные аккаунты, с которыми вы можете поиграть. Я написал больше о том, почему я использую его здесь .

1
ответ дан 8 December 2019 в 02:08
поделиться

Team Foundation Server довольно прост в использовании и его легко начать с исходных кодов из безопасного источника (используется общая терминология для команд). Однако, поскольку часть разработки находится в Индии, они могут быть более осведомлены о Subversion.

Если вы используете Subversion, я бы посмотрел на VisualSVN . Это фантастически, просто в использовании и быстро в настройке (TFS немного сложен в настройке). VisualSVN предлагает подключаемый модуль IDE ($ 50) и серверный аналог, который загружает Subversion для машин Windows (бесплатно)

1
ответ дан 8 December 2019 в 02:08
поделиться

Как уже упоминалось, SVN и черепаха - это путь.

Я также получил бы лицензию на визуальный SVN ( http://www.visualsvn.com/ . ]) это не бесплатно, но действительно хорошо, она использует Tortoise SVN и дает вам свои возможности в IDE.

1
ответ дан 8 December 2019 в 02:08
поделиться

Я рекомендую Subversion + TortoiseSVN (для интеграции с Explorer) + AnkhSVN (интеграция с Visual Studio).

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

1
ответ дан 8 December 2019 в 02:08
поделиться

Проверьте Subversion: http://subversion.tigris.org/

Имеет также плагин GUI VS .NET. http://tortoisesvn.tigris.org/ http://ankhsvn.open.collab.net/

Все с открытым исходным кодом и бесплатно.

1
ответ дан 8 December 2019 в 02:08
поделиться

По моему опыту, SVN плохо сосет через HTTP. Вы захотите вырвать свои волосы, если ваш репо имеет какой-либо значительный размер, особенно с залитой туда трансатлантической поездкой туда и обратно. Лично я бы пошел с Mercurial.

Google недавно провел некоторое исследование по Git против Mercurial. Самым большим преимуществом Mercurial было то, что он очень хорошо играл с HTTP.

TortoiseHg, хотя и не такой зрелый, как TortoiseSVN, представляет собой довольно солидный графический интерфейс Windows. Хотя вы упомянули, что вы не очень заинтересованы в ветвлении и слиянии, это обычные действия во всех DVCS. К счастью, потому что они распространены, они хорошо поддерживаются в пользовательском интерфейсе и в целом относительно безболезненны.

2
ответ дан 8 December 2019 в 02:08
поделиться

Subversion (SVN) is obviously a popular choice. It's also quite commonly used now (Google Code, Sourceforge, etc.) so there should be lots of documentation out there about its use. Git is a good choice too, but the lack of GUI interfaces available makes it not fit your requirements so well.

I'm assuming since you're using .NET you're developing in a Windows environment primarily. Check out VisualSVN products. They make a great (FREE) Server product for actually running a full fledged svn server in a windows environment (it supports SSL, group/user authentication including Active Directory support).

They also offer a Visual Studio plugin, although it is not free (although quite reasonable at $49/developer). AnkhSvn is another Visual Studio client plugin option. It's not quite as great, but it is free.

http://www.visualsvn.com/server/ - Free Windows SVN Server

http://www.visualsvn.com/visualsvn/ - Visual Studio Client Plugin

http://ankhsvn.open.collab.net/ - Free Visual Studio Client Plugin

So, I think Subversion using VisualSVN's product offerings are going to give you the best windows/gui integration at a very reasonable price.

4
ответ дан 8 December 2019 в 02:08
поделиться

Подумайте о распределенной системе: darcs , git или mercurial . У всех есть свои приверженцы, но с точки зрения работы они очень похожи. Сборка darcs может занять много времени, потому что он написан на Haskell, и вам в конечном итоге понадобится сначала собрать Haskell. Mercurial основан на Python, его легко взломать и расширить. И, конечно, git - это то, что используется для Linux, очень широко доступный, множество инструментов.

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

10
ответ дан 8 December 2019 в 02:08
поделиться

Mercurial великолепен и действительно прост.

1
ответ дан 8 December 2019 в 02:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: