Как использовать git для управления одной кодовой базой, но в разных средах - PullRequest
7 голосов
/ 03 июня 2010

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

Главный рабочий стол

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

Ноутбук

Иногда мне хочется кодировать в дороге, поэтому я сделал клон с внутреннего сервера и создал новую ветку под названием «ноутбук-ветка». К сожалению, некоторые каталоги версии MSVC ++ отличаются от среды Main Desktop . Я просто изменил файлы в «ветке ноутбука» и зафиксировал их там.

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

Как лучше всего это сделать?

edit : В этом случае изменяются не файлы конфигурации, а файлы решений / проектов VC ++.

Ответы [ 2 ]

5 голосов
/ 03 июня 2010

как я это делаю ...

... не фиксирует специфичные для среды файлы через .gitignore.

В CodeIgniter это означает

  • .htaccess
  • database.php
  • config.php

Вот и все.

В зависимости от того, как настроено ваше приложение , это может иметь различные эффекты. В основном я скажу config.example.php и example.htaccess, которые я выполню . Затем, если мне нужно настроить среду, я изменю их и переименую в процессе. Поскольку git игнорирует их, вам не нужно об этом беспокоиться.

Если у вас есть лотов кода, специфичного для среды, вам нужно переосмыслить макет вашего приложения.

0 голосов
/ 03 июня 2010

Я думаю, что уже слишком поздно для решений .gitignore.

Я бы:

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