Что я должен знать о Git, прежде чем начать его использовать? - PullRequest
9 голосов
/ 24 сентября 2008

Я использовал «традиционные» системы контроля версий для поддержки репозиториев исходного кода в прошлых проектах. Я начинаю новый проект с распределенной командой, и я вижу преимущества использования распределенной системы. Учитывая, что я понимаю SourceSafe, CVS и Subversion; Какие у вас есть предложения для новичка Git?

Ответы [ 5 ]

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

Ускоренный курс Git - SVN - хорошее чтение для начала работы.

7 голосов
/ 28 сентября 2008

В моем собственном опыте перехода от Subversion к Git самое важное не то, что вам нужно выучить, а то, что вам нужно отучиться . Управление распределенной версией очень отличается от централизованного управления версиями. CVC является подмножеством DVC, поэтому вы можете просто сделать CVC в инструменте DVC, но это будет сложнее, чем с помощью инструмента CVC.

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

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

Один очень важный аспект Git: все другие инструменты имеют более или менее определенный рабочий процесс. Git нет. Git - это набор для построения рабочего процесса DVCS. Это иногда затрудняет понимание того, что делать: вам нужно спроектировать и реализовать собственный рабочий процесс (подсказка: используйте множество сценариев оболочки). Я пользуюсь Git уже больше года, и до сих пор не до конца понял свой рабочий процесс.

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

Do учебник

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

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

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

Перед фиксацией файлов их необходимо добавить в область подготовки Git & mdash; каждый раз. Чтобы сделать это проще, есть опция -a для добавления всех отслеживаемых файлов, как в git commit -a.

Кроме того, когда вы делаете git diff, он показывает только разницу между вашей рабочей копией и тем, что находится в промежуточной области. Если вы добавили измененные файлы в область подготовки, git diff может ничего не сообщать, даже если у вас есть незафиксированные изменения. Используйте git status, чтобы увидеть наверняка.

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

Я попробовал Git в моей компании. Мы использовали CVS и хотели перейти на лучший инструмент VC. Мы выбрали git как лучший инструмент для управления версиями файлов (Linus на GIT). Его производительность просто лучшая, и это действительно отличный инструмент для разработчика, который хорошо разбирается в управлении версиями, но это кошмар для обычных разработчиков, которые используют управление версиями в фоновом режиме и не хотят учиться использовать более несколько часов (и им нужно многому научиться)

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

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

Существует также коммерческое решение для Subversion MultiSite (которое мы еще не пробовали, но попробуем в ближайшее время) - WANDisco

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