|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
Siemargl Alexander A. Sak Извините за глупый вопрос. О каких пулл-реквестах в гите идет речь? Разве это к гиту относится? Я почему-то думал, что это фича всяких битбакетов-гитхабов-гитлабов. То есть вот я сделал локально git init, git branch, потом решил перенести изменения из бранча в мастер и... Тут как-то делается пулл-реквест? Спасибо, не знал. git request-pull создает текст, который надо просто отправить владельцу репозитория. В этом тексте -- описание того, где находятся изменения (адрес репозитория, ветка, начальный коммит). Ну как-то не тянет на киллер-фичу ИМХО. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2022, 17:50 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
Alexander A. Sak Спасибо, не знал. git request-pull создает текст, который надо просто отправить владельцу репозитория. В этом тексте -- описание того, где находятся изменения (адрес репозитория, ветка, начальный коммит). Ну как-то не тянет на киллер-фичу ИМХО. Ну да. А PR GitHub или MR GitLab - они точно о том же: "Я, типа, хочу, чтобы изменения из моей ветки взяли в общую". Там просто всякого блек-джека больше. Сам термин "pull request" пошел с тех времен, когда git использовали как распределенную систему без центрального репо (ради чего он и задумывался) и кто-то мог получить изменения из ветки кого-то другого сделав "git pull" из его ветки (не давая другому доступа на запись в своем репозитории). ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2022, 18:08 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
Siemargl В SVN, насколько я помню, тоже надо руками делать svn add *.x Siemargl И вообще про Мercurial забыли ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2022, 19:03 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
fraks White Owl При отсутствии сети и серверов - rcs единственный выбор. Почему это? Например в том же TortoiseSVN в комплекте идет локальный сервер. С TortoiseGit думаю примерно так же. Git под винду тоже встречал. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2022, 19:07 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
asutp2 White Owl Git в принципе не может быть удобнее человеку. Он может быть удобнее компании-корпорации, но не отдельным разработчикам. ...пропущено... А вот в git предполагается что ты (человек-developer) делаешь изменения в своем репозитории, потом делаешь этот самый pull request и ждешь когда специальный человек-maintainer проверит твою работу и вытащит из твоего местечкового репозитория в репозиторий выше уровнем, ну или отправит эти изменения обратно на доработку. Это полезно для корпораций и с учетом что ты работаешь в команде отвечающей за малый участок большого проекта. Я вот например для нескольких своих личных проектов использую git без всяких проблем. Там я единственный разработчик, и нет никаких других специальных людей, но при этом ведутся разные ветки, точно также могу сделать pull реквест из одной в другую и т.д. И выше справедливо заметили, что git очень быстр. Сравниваю свой же опыт работы с svn, когда все реально тормозило не по детски.... А тормоза... не верю. На моих машинах что одно, что другое работают с одинаковой скоростью. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2022, 19:10 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
White Owl На моих машинах что одно, что другое работают с одинаковой скоростью. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2022, 19:29 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
Ares_ekb White Owl На моих машинах что одно, что другое работают с одинаковой скоростью. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2022, 19:36 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
White Owl Ares_ekb пропущено... А сервер на другой машине или той же? Apache Subversion или другой? По какому протоколу работает? https? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2022, 19:40 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
White Owl, я находил какую-то противоречивую информацию по производительности. Где-то пишут, что по ssh должно работать ощутимо быстрее, чем по https. Где-то пишут, что в последних версиях особой разницы нет. Вроде по https более гибкие возможности распределения прав доступа и видимо поэтому у нас этот протокол и используется, но сам я это не настраивал, это делали админы. Нужно будет уточнить, может они ssh включат. Плюс у нас всё это ещё работает через vpn. То, что очень тормозит это факт. Но в чем причина... Я пытался смотреть что происходит через Wireshark. SVN-клиент отправляет просто кучу запросов на сервер, и у меня ощущение, что проблема именно в этом, и такая схема быстро работать не может. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2022, 20:00 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
White Owl Siemargl В SVN, насколько я помню, тоже надо руками делать svn add *.x ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2022, 22:48 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
Наталья87 Являюсь Delphi - разработчиком. Смешно. Наталья87 Но вот почему-то у меня никак с ними не получается и хотелось бы понять, что я делаю не так. Судя по описанию случаев, Вы устраиваете вместо приложения дикий бардак и надеетесь, что инструмент наведёт в нём порядок. Наталья87 В итоге уже через 7 дней после работы с проектом WinMerge показывает кашу и невозможно понять, где именно были сделаны реально важные изменения, а где мелкие правки, какой код, когда и куда был перемещён. Через 30 дней процедура Merge уже становится абсолютно бессмысленной Похоже, главное, чего Вы не понимаете - система контроля версий позволяет собрать некий набор изменений в единую сущность, присвоить этому набору имя/номер и дальше манипулировать этим набором изменений как единым целым. Например - собрать в версию наборы изменений 1, 3 и 5 - пропустив 4 и 2, либо взять изменения, сделанные в версии 3.2 по задаче 456, и выполнить их же в версии 3.1 Никанор Кузьмич Я бы git рекомендовал, он мне больше всего нравится. Ну Вы даёте. Это всё равно что первокласснику вместо букваря подсовывать Канта. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2022, 01:33 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
White Owl Если у вас одна команда совместно работающая над проектом - лучше брать svn. Намного удобнее и проще со всех точек зрения. После того, как я перешёл с SVN на Mercurial, я оценил, насколько лучше в последнем мержи. Возвращаться к SVN с его кошмариками уже категорически не хочу. Git по удобству использования здорово уступает Mercurial-у, но таки лучше SVN. Я согласен с тем, что SVN куда проще, но 95% времени с системой контроля версий занимают сложные мержи - и именно здесь SVN проигрывает в одну калитку. По сравнению с этим выучить нетривиальные особенности гитовых команд - мелочь, просто один раз сесть и разобраться. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2022, 01:38 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
softwarer Git по удобству использования здорово уступает Mercurial-у Mercurial был задуман как упрощенный вариант Git. Внутри там по сути все то же самое. Я после SVN как раз начинал с него, но, похоже, что Mercurial он-таки (как по мне, так по непонятным причинам) гонку с Git в итоге проиграл. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2022, 02:02 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
White Owl Ага. Вот только 99% процентов людей обожающих git и хающих svn не выходят за рамки возможностей svn. White Owl Git в принципе не может быть удобнее человеку. White Owl Тут каждый разработчик является полноценным maintainer'ом. White Owl Ты хочешь исправить код в паре исходников? Делаешь svn update (получаешь текущую ревизию себе в локальную копию), исправляешь код в той паре исходников, делаешь svn commit. Всё. White Owl И, кстати, не надо делать add каждый {неприличное_слово} раз, как в git... White Owl А вот в git предполагается что ты (человек-developer) делаешь изменения в своем репозитории, потом делаешь этот самый pull request и ждешь когда специальный человек-maintainer проверит твою работу и вытащит из твоего местечкового репозитория в репозиторий выше уровнем, ну или отправит эти изменения обратно на доработку. Alexander A. Sak git request-pull создает текст, который надо просто отправить владельцу репозитория. В этом тексте -- описание того, где находятся изменения (адрес репозитория, ветка, начальный коммит). Ну как-то не тянет на киллер-фичу ИМХО. softwarer Ну Вы даёте. Это всё равно что первокласснику вместо букваря подсовывать Канта. Сначала первые несколько лет работал на проектах без контроля версий вообще. Потом подумал, что надо бы освоить контроль версий. А то все говорят "маст хэв", а я ни сном ни духом. Почитал холивары в энторнетах. Показалось, что гит таки получше. Начал использовать на своих пет проектах. Ну там все просто - ведешь себе линейную историю изменений и все. Попробовал пару вещей, чисто для себя - ветки посоздавать, мерджи поделать. Потом уже поработал на проектах с большими командами с и git, и с SVN. Как по мне, не так страшен черт, как его малюют. Ну вот если вообще без опыта работы с контролем версий придти на проект с CI, пул-реквестами, гитхабом и прочим фаршем, - да, с непривычки будет тяжело. А если потихоньку вливаться, то какая разница? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2022, 02:35 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
fkfka2 Mercurial был задуман как упрощенный вариант Git. Внутри там по сути все то же самое. Да на здоровье. Но пользоваться им существенно удобнее. Кроме того, не знаю, насколько это особенность именно системы, а насколько - оболочки, но при использовании Tortoise с Mercurial есть совершенно восхитительная и отсутствующая в Tortoise/git возможность включать в коммит только некоторые изменения из файла. Это очень экономит время. fkfka2 но, похоже, что Mercurial он-таки (как по мне, так по непонятным причинам) гонку с Git в итоге проиграл. Согласен. Если бы я был технологическим лидером большого проекта, то сейчас начинать использовать Mercurial я бы уже не стал. А вот если бы я был начинающим разработчиком, которому для наколеночных поделок надо хоть как-то разобраться с контролем версий - думаю, Mercurial стал бы как раз таки лучшим выбором на ближайшие годы. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2022, 03:49 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
Никанор Кузьмич А че такова? Я с гита и начинал Думаю, Вы это делали не так, как Наташа. Судя по её вопросам - с git-ом она окончательно запутается. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2022, 03:51 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
fraks Например в том же TortoiseSVN в комплекте идет локальный сервер. При файловом доступе к репозиторию один и тот же процесс является и клиентом и сервером. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2022, 05:26 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
Наталья87 СКВ реально помогают и решают все проблемы, связанные с отслеживанием измннений в проекте. Но у меня вот не получается. Что я делаю не так? Вместе с СКВ, отслеживание изменений в исходниках становится неотъемлемой частью процесса разработки. "Файлики-на-заметку" легко укладываются в репозиторий, меняются, удалятся; бинарники (fbd, exe, dcu ...) легко игнорируются. Что не так делаешь - не используешь нужный тебе инструмент и разгребаешь хаос, вместо того, чтобы предупредить его возникновение. СКВ помогает с этим - задаёт культуру ведения проекта. Плюс git'а - используешь в любое время на то количество процентов заложенного в нем функционала, насколько тебе нужно в конкретном случае; с ним - правила определяешь ты с командой, настолько, насколько комфортно. В этом случае, для захода, git - оптимально. Почитай перед сном книжку , поставь Git for Windows + адекватный gui-клиент ( Git Extensions или SmartGit ) + инструмент сравнения и слияния (знакомый тебе WinMerge или Kdiff3 ). ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2022, 05:45 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
Если Наталья - новичек в системах версионного контроля и ей надо просто быстрое вхождение - то я-бы все таки предложил SVN. Он проще с точки зрения состояний. Есть просто update,add,commit и вобщем-то этого достаточно чтобы начать работать. И меньше шансов напортачить или закопаться в какой-то пустяк. Чтобы работать с git надо уяснить чуть более широкую концепцию stages, которые проходят файлы в этой системе. Желательно по картинке. В интернетах полно диаграмм которые моделируют состояния файлов в этой системе. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2022, 11:16 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
softwarer при использовании Tortoise с Mercurial есть совершенно восхитительная и отсутствующая в Tortoise/git возможность включать в коммит только некоторые изменения из файла. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2022, 11:50 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
mayton, Там, понимаешь, еще в чем дело - у Гита, по сути, нет такого, как "локальный репо" или "удаленный репо". В действительности там все репо полностью равноправны и можно хоть целым кодлом работать вообще без какого-то централизованного сервера. Выделенный репо на сервере (да тот же Гитхаб, например) используется только для более простой синхронизации кода. И, как я писал, достаточно просто слегка понимать как у него устроена система версий, которых и него, на самом деле, в прямом смысле и нет :)), и веток, которых у него тоже на самом деле нет :)) И вся эта с виду сложная картинка она становится абсолютно не нужна, потому все становится совершенно прозрачно. Достаточно просто вместо заучивания каких-то магических команд потратить от силы час и прочитать в гитбуке пару глав про это. Для меня например то как работает SVN (правда, я с ним много меньше работал) это вот действительно какое-то шаманство :)) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2022, 13:06 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
Мой личный опыт с этим не соглашается. У svn пожалуй главный недостаток - нельзя поработать без сети "в самолёте". А в Гите можно и бранчи создавать и переключаться и мёржить все в оффлайне. Это пожалуй мой главный довод против SVN, а в остальном (в дидактическом смысле) svn для начинающих - удобен. Кажущийся либерализм веток такой как принципиальное отсутсвие например trunk или develop может быть как преимуществом так и недостатком. Иногда новичек сам не знает какая ему нужна структура. И здесь может быть лучше как раз предложить типовую структуру бранчевания а потом уже новичек с опытом сам поймет что ему надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2022, 13:37 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
mayton предложить типовую структуру бранчевания При которой в любой момент кто угодно может наложить кривым коммитом в общую ветку. Уже проходили :) Может сейчас с СВН как-то по другому работают, я просто не знаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2022, 14:11 |
|
Системы контроля версий и Delphi
|
|||
---|---|---|---|
#18+
Вы (многие) как-то забываете, что топикстартер работает в одно лицо и ничего из "распределённости" git - ей просто не требуется. SVN брать или тот же Fossil - вопрос десятый. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2022, 14:55 |
|
|
start [/forum/topic.php?fid=16&msg=40125373&tid=1339595]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
32ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
66ms |
get tp. blocked users: |
1ms |
others: | 233ms |
total: | 378ms |
0 / 0 |