LINUX.ORG.RU

SVN


0

3

Подскажите пожалуйста, как этим пользоваться?

У меня задача такая: хочу, чтобы то, что я разрабатываю у себя на компе автоматически обновлялось у меня на сервере в интернете. Использую Eclipse.

Но я с этим еще вообще не сталкивался - не знаю с чего начать. Надо ли что-то устанавливать на сервере?

Нужна ваша помощь.

Ответ на: комментарий от true_admin

Зачем для одного действия делать разные команды? Это касается и скачивания (fetch/pull) и отката изменений (checkout/reset).

Reset ★★★★★
()
Ответ на: комментарий от LongLiveUbuntu

>Кстати, я пока не понял чем отличается git fetch от git pull

git pull = git fetch && git merge

yoghurt ★★★★★
()
Ответ на: комментарий от yoghurt

Нет, checkout (обновление исходников) у нас делается update'ом, а revert (откат изменений) revert'ом. При этом для отката изменений одного файла используется revert и для отката всех изменений как ни странно тоже используется revert.

Reset ★★★★★
()
Ответ на: комментарий от yoghurt

Действие одно «откат изменений». Это всё равно что в *nix chmod одного файла делать chmod'ом, а chmod директории делать не chmod'ом, а каким-нибудь change-mode-for-directory.

Reset ★★★★★
()
Ответ на: комментарий от Reset

>Действие одно «откат изменений»

git reset - да, git checkout чаще используется для прыганья по бранчам или состояниям дерева на конкретный коммит.

yoghurt ★★★★★
()
Ответ на: комментарий от yoghurt

Зато в CC дисциплина строже

дисциплина - она в голове, ёп

shty ★★★★★
()
Ответ на: комментарий от yoghurt

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

Кстати в git'е еще нет коротких числовых ревизий, поэтому навигация по дереву затруднена.

Reset ★★★★★
()
Ответ на: комментарий от tailgunner

> > Рулит только ClearCase.

Рабы ынтерпрайза ITT.

Я давно с ней не работаю. Сейчас P4 & Git.

Насколько я понимаю, ты у нас фанат Hg? Расскажешь, как у неё обстоят дела c ACL?

ky-san
()
Ответ на: комментарий от ky-san

> Насколько я понимаю, ты у нас фанат Hg?

Можно сказать и так.

Расскажешь, как у неё обстоят дела c ACL?

Смотря для чего они тебе нужны.

tailgunner ★★★★★
()
Ответ на: комментарий от Reset

> которая для этого не предназначена это кроме как 3.14здец не назовешь.

Это напоминает стенания ярых императивщиков о ФП: «=» обозначает связывание, а не привычное присваивание. А в некоторых ФП вообще переменных нет, а массивы не имееют ничего общего с прывычными массивами в Си. Не иначе, как ArcTan[1]*4-здец.

ky-san
()

Для указанной задачи лучше подходит Mercurial. SVN хорош, когда нужно выстраивать чёткую вертикаль власти и жёсткую централизацию. А когда один разработчик и нужно код туда-сюда таскать, то лучше Mercurial.

Можно git, но mercurial намного проще. И на python, что гарантирует его лёгкую запускаемость везде, где можно.

kid_lester
()
Ответ на: комментарий от tailgunner

> Смотря для чего они тебе нужны.

Контроль за разными частями исходников платформы для разграничения доступа. Вариант по репозиторию на компонент не подходит.

ky-san
()
Ответ на: комментарий от ky-san

Вариант по репозиторию на компонент не подходит.

почему?

shty ★★★★★
()
Ответ на: комментарий от ky-san

> Контроль за разными частями исходников платформы для разграничения доступа.

Это не ответ. Нужно ли тебе ограничение на чтение (т.е. кто-то не должен видеть ынтерпрайз-секреты)?

tailgunner ★★★★★
()
Ответ на: комментарий от shty

Я вкурсе про этот подход. Он кривой и неюзабельный. Куда проще, к примеру, скрыть исходники, но оставить собранную библиотеку + хэдеры доступными кастомерам.

ky-san
()
Ответ на: комментарий от ky-san

Он кривой и неюзабельный.

так в чём его кривость-то, в непривычности персонально для Вас?

Куда проще, к примеру, скрыть исходники, но оставить собранную библиотеку + хэдеры доступными кастомерам.

кто мешает так сделать?

shty ★★★★★
()
Ответ на: комментарий от shty

Отстутствие вменяемого ACL. Посмотри, ради интереса, на ClearCase, и расскажи, как всё можно сделать на Hg. А потом продолжай троллить.

ky-san
()
Ответ на: комментарий от ky-san

> Отстутствие вменяемого ACL. Посмотри, ради интереса, на ClearCase, и расскажи, как всё можно сделать на Hg. А потом продолжай троллить.

Зачем? Так можно про любое написать.

«Отсутствие возможности поменять автомат. Посмотри, ради интереса, на Urban Terror, и расскажи, как всё можно сделать на ClearCase. А потом продолжай умничать».

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

Свои задачи hg решает очень хорошо. И прост, как три копейки.

kid_lester
()
Ответ на: комментарий от ky-san

>> Нужно ли тебе ограничение на чтение

бязательно.

Такого нет ни в Mercurial, ни в других известных мне DVCS. Впрочем, судя по опыту перехода OpenSolaris на Mercurial, это не особо серьезное ограничение.

tailgunner ★★★★★
()
Ответ на: комментарий от kid_lester

жёсткую централизацию

Это всегда тормоз в девелопменте. Для того чтобы svn работал нужна (более-менее) быстрая связь и нужен сервер. А если у тебя комманда разбросана по миру то рано или поздно проблемы настанут.

Пока самый большое «преимущество» svn которое мне назвали было то что «он не хранит историю на клиентах, это более секурно в случае когда проект упрут» :)

true_admin ★★★★★
()
Ответ на: комментарий от ky-san

Тут другой случай. В ФП «=» делает именно то что оно означает и ничего больше. Один функционал сконцентрирован в одной сущности и при этом эта сущность выполняет только этот один функционал.

Reset ★★★★★
()
Ответ на: комментарий от Pavval

то что откат должен делаться откатом, а не вытягивает файла которого не было у тебя на диске. Идиотизм.

JFreeM ★★★☆
()
Ответ на: комментарий от JFreeM

то что откат должен делаться откатом, а не вытягивает файла которого не было у тебя на диске. Идиотизм.

Почему это не было? Был и есть. лежит в .git/ SVN тоже вытягивает файл, и что?

Pavval ★★★★★
()
Ответ на: комментарий от Pavval

стоп. Что делает чекаут? Вытягивает директорию с нуля в новую пустую директорию. Отлично. Где ваш юникс вей? почему одна команда еще и откатывает файл до последней ревизии в системе контроля версий?

JFreeM ★★★☆
()
Ответ на: комментарий от JFreeM

стоп. Что делает чекаут? Вытягивает директорию с нуля в новую пустую директорию.

checkout вытягивает последнюю версию файла/файлов/каталога/каталогов. Все. Это одно действие - зачем две команды??

Pavval ★★★★★
()
Ответ на: комментарий от ky-san

Отстутствие вменяемого ACL. Посмотри, ради интереса, на ClearCase, и расскажи, как всё можно сделать на Hg.

я Вам показал решение, оно как минимум сравнимое по мощности, что Вам ещё непонятно?

//да, я тоже в своё время как только слез с svn удивлялся - как так

А потом продолжай троллить.

ну-ну, аргументы кончаются?

shty ★★★★★
()
Ответ на: комментарий от true_admin

Т.е. git pull это git fetch + git merge

Не обязательно. После git fetch ты можешь сделать git rebase, а можешь git merge, можешь с fast-forward-ом, можешь без. Можешь сделать октопус merge, или merge со сквашем...

В этом фишка гита - он low level и developer oriend. А меркуриал - это гит для домохозяеек. Разница между гитом и меркуриалом - это как между линуксом и виндой.

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

dizza ★★★★★
()
Ответ на: комментарий от dizza

> Разница между гитом и меркуриалом - это как между линуксом и виндой.

Разница между гит и меркуриал - это разница между старым Солярисом и современным Линуксом (и если ты не работал в Solaris 2.5 без всяких GNU-добавлений, ты не знаешь, почему Unix проиграл венде).

гит сложнее, гит мощнее, в гит гораздо сложнее погрузится, поэтому изучение гита - хорошая инвестиция.

Ага. Научиться плавать со связанными ногами - тоже хорошая инвестиция %)

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Ага. Научиться плавать со связанными ногами - тоже хорошая инвестиция %)

Если ты спасатель на пляже, а не загарающая дама, то таки да, плавать со связаными ногами - хорошая инвестиция, ибо мало ли в какую жопную ситуацию ты можешь попасть.

Вообще аналогия хороша - если по долгу професии нужно окунуться во всю кухню систем котроля версий - то гит, если что-то там хоть как-то комитить по бранчам - то мерк.

dizza ★★★★★
()
Ответ на: комментарий от dizza

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

А у какой профессии долг «окунаться во всю кухню системы контроля версий»?

если что-то там хоть как-то комитить по бранчам - то мерк.

Бгг. Это предложение как нельзя лучше описывает 90% гитоюзеров. Они дальше commit и push не продвинулись.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

описывает 90% гитоюзеров. Они дальше commit и push не продвинулись.

Ну 90% процентов любого общества, сам знаешь :)))

dizza ★★★★★
()
Ответ на: комментарий от tailgunner

А у какой профессии долг «окунаться во всю кухню системы контроля версий»?

Релиз-менеджер например.

dizza ★★★★★
()
Ответ на: комментарий от dizza

хорошая инвестиция

не дай бог работать там где git используется. Keep it simple. Может усложнением git решаются задачи которые имеют другие решения?

true_admin ★★★★★
()
Ответ на: комментарий от shty

> я Вам показал решение, оно как минимум сравнимое по мощности, что Вам ещё непонятно?

сравнимое по мощности

Рассмешил. Ты ещё расскажи про атомарность коммитов в кучу репозиториев, клоун.

ky-san
()
Ответ на: комментарий от tailgunner

> Такого нет ни в Mercurial, ни в других известных мне DVCS.

Согласен, это всё потому, что такие понятие и применение ACL противоречит идеям DVCS.

Впрочем, судя по опыту перехода OpenSolaris на Mercurial, это не особо серьезное ограничение.

Для открытых проектов - да.

ky-san
()
Ответ на: комментарий от Reset

> Тут другой случай. В ФП «=» делает именно то что оно означает и ничего больше.

Я почему этот пример привёл — обозначение одно, а семантика разная в ФП и в императивных ЯП. Ничего, никто не ворчит.

ky-san
()
Ответ на: комментарий от ky-san

Рассмешил. Ты ещё расскажи про атомарность коммитов в кучу репозиториев, клоун.

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

shty ★★★★★
()
Ответ на: комментарий от ky-san

>> Такого нет ни в Mercurial, ни в других известных мне DVCS.

Согласен, это всё потому, что такие понятие и применение ACL противоречит идеям DVCS.

Что не мешает применять DVCS в закрытых коммерческих проектах: TeamWare, BitKeeper, да те же Mercurial и Git. В общем, проблема надумана - если часть репозитория закрыта от чтения, то без нее можно обойтись по определению, а такую часть можно вынести в отдельный репозиторий.

Впрочем, судя по опыту перехода OpenSolaris на Mercurial, это не особо серьезное ограничение.

Для открытых проектов - да.

Насколько я помню, в ON были закрытые компоненты, даже после открытия кода. Так вот, эти закрытые компоненты жили в репозитории (или нескольких), доступ к которым был только у Sun. И жалоб по этому поводу я не припомню.

tailgunner ★★★★★
()
Ответ на: комментарий от former_anonymous

какие

см. выше в том посте. Впрочем, кто о dvcs только по рассказам из интернета знает тот не поймёт :)

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

не дай бог работать там где git используется. Keep it simple.

Та самая simple может быть как локальной, так и глобальной. Выбор чего-то максимально простого и понятного может оказаться лишь локальными минимумом функции :) Я люблю простоту стратегическую, а не сиюминутную. Но в неумелых руках локальный максимум с надеждой на глобальный минимум сложности может так и остаться максимумом :) Так что, как в анекдоте: «нехрен выеживаться, коль летать не умеешь»

Насчет работать «там где гит». Работаю как раз в таком месте. Перед переходом с svn на dcvs был нехилый такой срач git vs mercurial. Поднимать месячную переписку нескольких десятков людей не охота, но в итоге выбрали git. В итоге все довольно быстро привыкли и всех устраивает.

И вообще гит или мерк - каждому свое, главное на bazaar не нарваться )))

dizza ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.