Начало работы с Subversion, Git или аналогичной системой контроля версий, чтобы сохранить историю моих файлов? [закрыто]

Я понимаю, что это может быть широкий вопрос на первый взгляд, но я ищу конкретные примеры установок /рабочих процессов, которые люди используют для хранения истории версий отредактированных файлов на сайте WordPress. Например, при разработке сайта (и даже после его жизни) я часто вношу изменения в файлы CSS и PHP, но у меня нет отличного способа вернуться к более старым версиям этих файлов. Для моих целей внесение изменений в локальную установку и последующее копирование этих изменений на сайт в реальном времени часто вызывает больше проблем, чем хотелось бы. Любые предложения о том, как начать использовать средство управления версиями для отслеживания изменений в файлах на реальном сайте?

30 голосов | спросил Travis Northcutt 12 PM00000070000002231 2010, 19:30:22

7 ответов


14

Я не уверен, насколько вы знаете об использовании контроля версий, но я недавно переключился с SVN на GIT и нашел, что это здорово!

Хотя это зависит от того, на вашем сервере live-сайта установлен GIT (или позволит вам). У меня есть GIT-настройка на реальном сервере, а также запуск ветки, называемой production. Всякий раз, когда я заканчиваю реализацию /исправление чего-либо локально, я объединять его в ветвь production, затем SSH на сервер реального сайта и втягивать изменения. Beats перетаскивание файлов по FTP, когда вы никогда не знаете, перезаписываете ли вы изменения и т. Д.

Я бы порекомендовал поместить некоторое время, получая его с помощью GIT (если вы еще этого не сделали), я нахожу его намного проще и меньше хлопот, чем SVN, когда дело доходит до изменения /добавления загрузок файлов (и в отличие от SVN, t поместите туповатую .svn папку всюду ).

Итак:

Конечно, я нахожусь на Mac, поэтому извините, если ни одно из них не применимо.

Редактор кода: Кода Установленный GIT через порты (с использованием Porticus) Git: GitX

Если бы я должен был создать все новое, я бы сделал:

  1. Установите Coda

  2. Установите Porticus (для чего вам потребуется установить порты, но есть информация на этой странице)

  3. После того, как вы установили Porticus, откройте его, найдите «git-core» и установите его.

  4. Загрузка и установка GitX 7-5

  5. Существует хорошее руководство по настройке git repo здесь , но по сути: 1. Открыть терминал , 2. cd, где вы хотите, чтобы ваш сайт находился. $: mkdir mysite && cd mysite 3. $: git init и вот оно! Если вы добавите файлы в эту папку, перейдите к следующему шагу

  6. Как только вы настроили репозиторий GIT локально (выше статьи), тогда, если вы откроете этот каталог в GitX, вы сможете передавать данные и т. д. и т. д.

Настройка всего на сервере может быть немного сложной, у меня есть MediaTemple и учетная запись Dreamhost, у которых есть GIT из коробки. Ссылка в 5. говорит вам, как добавить удаленное репо, вам не нужно это делать, пока вы не захотите привести свой живой сайт в уравнение. Я бы порекомендовал, чтобы все сначала работало локально (в отличие от SVN, GIT не требует удаленного репозитория, так что пока вы можете все на своем компьютере)

ответил Joe Hoyle 12 PM00000070000000531 2010, 19:43:05
8

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

Плагины

Поскольку плагины уже размещены на сервере WordPress, я просто проверяю подключаемый модуль непосредственно в каталоге /wp-content/plugins/ моей локальной установки WordPress (я запускаю WAMP в моем окне разработки). Затем я вношу изменения в свою локальную копию и, когда она готова к показу, зафиксировать репозиторий. Это плавный процесс там, без загрузки /загрузки и мгновенной проверки, что мои изменения сработали.

Темы

Темы немного разные, особенно при создании для клиента. Я создаю локальный репозиторий (для этого у меня есть раздел R на моем жестком диске) и проверьте пустой репозиторий непосредственно в моем каталоге /wp-content/themes , Затем я делаю изменения по мере необходимости и развиваются до тех пор, пока они не будут готовы, совершая изменения, когда я пойду.

Когда я готов опубликовать тему на производственном сервере клиента, я экспортирую репозиторий, застегиваю его и использую собственные темы>>> Добавить новую функциональность в WordPress. Это работает с настраиваемыми плагинами (которые также не размещены в WordPress).

Инструменты

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

Для SVN я использую Tortoise SVN . Он бесплатный, замечательно прост в использовании и интегрируется с файловой и командной структурой Windows. Обновление, фиксация и экспорт - это простой щелчок правой кнопкой мыши, выбор команд. Использование «Экспортировать» позволяет вам отправить всю папку (без досадных .svn) прямо в любое место по вашему выбору - я часто экспортирую на рабочий стол. Закрепление папки также является щелчком правой кнопки мыши, а WordPress обрабатывает загрузку.

Вручную переносить файлы может быть проблемой, особенно если вы продолжаете изменять один файл, но не все из них. Если вы используете FTP по всему каталогу с выбранным «переписать все», гораздо проще заменить старые файлы (и вам не нужно отслеживать, какие изменения были изменены, а какие нет). Это похоже на старую 5-минутную установку, которую использовал WordPress - просто замените все на новую версию.

ответил EAMann 12 PM000000100000004531 2010, 22:06:45
3

Лично я считаю забавным упражнение установить SVN /GIT и управлять им, но если вы можете качать $ 15 в месяц, Beanstalk стоит каждого пенни. Они управляют всем сервером для вас. http://beanstalkapp.com/ Инструменты развертывания FTP являются удивительными. Mine автоматически развертывает версию на моем промежуточном сервере, когда я выполняю, например,

Еще один способ получить личную версию файла - использовать drop box. Каждый раз, когда вы сохраняете файл в своем Dropbox, он отслеживает версию, и позже вы можете вернуться к любой предыдущей версии. Вы и другой разработчик или группа могут делиться папкой с папкой. Конечно, это не делает сундуки, слияния и т. Д., Но очень легко распределенной команде работать на одном веб-сайте. Вы просто не можете работать с одними и теми же файлами сразу.

Мы сохраняем рабочую копию SVN в dropbox, а затем фиксируем файлы, когда время записывается. Мои дизайнеры не будут передавать файлы или иметь дело с SVN, так что это compimise.

Я предпочитаю SVN, потому что мне не нужен весь транкинг, для которого GIT так хорош, и есть лучшие инструменты GUI, доступные из SVN.

ответил Andrew 23 PM00000050000000031 2010, 17:10:00
2

Мне нравится Aptana , у него есть встроенная подрывная деятельность, и вы можете подключиться к своему серверу с ftp /sftp легко и форматировать файлы, еще одна замечательная функция, которую он имеет, заключается в том, что если вы создадите новый проект php и включите «целую» папку WordPress (с wp-admin, wp-includes), вы получите завершение кода в ваших файлах тем.

В моей настройке репо является локальным.

ответил Amit 12 PM00000070000004831 2010, 19:46:48
1

Вы запрашиваете «но я ищу конкретные примеры установок /рабочих процессов, которые люди используют для хранения истории версий отредактированных файлов на сайте WordPress», но вы также упоминаете продукты:)

Вы получите выше, как ответ список инструментов и некоторые лучшие практики, но я сосредоточусь здесь на рабочих процессах: ОНИ НЕ РАЗРЕШАЮТ СПЕЦИФИЧЕСКИ:

Но для общих примеров /настроек /рабочих процессов:

Для начала: существуют шаблоны CM, поэтому независимо от оснастки. Google на шаблонах CM, много книг там, даже в сообществах вики, например. http://www.cmcrossroads.com/forums .

Существуют также руководства по настройке правильной стратегии потока (стратегия потока Google) и т. д.

Я не думаю, что есть что-то особенное в развертываниях WordPress по сравнению с CM Management, включая распределенную параллельную разработку на крупных фабриках Siebel, SAP, Informatica, Java и т. д. Это действительно почти дефолт.

Я думаю, что отсутствует, что никто не пишет CMplan для разработки WordPress (пока) (IEEE). Как только кто-то это сделал (инструмент независим). Требования могут быть заполнены, я думаю, любым инструментом.

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

план CMP начинается с идентификации всех CI другими словами: составить список всех типов CI, присутствующих в реализации WordPress, включая приложения, плагины, базу данных, документацию, помощь, содержимое, конфигурационные файлы, примечания к выпуску (!) , и т.д...). Это хорошее начало. Затем определите, какие из них вы хотите взять под CM.

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

Решения, подобные объединению от производства к разработке и способу его обработки, являются частью этой главы (здесь два основных шаблона) (хотя, конечно, вы должны попытаться свести к минимуму эти исправления).

Только позже найдите инструмент для выполнения CM с одной стороны (включая управление версиями как один из инструментов) и инструментарий управления изменениями с другой стороны (который сохраняет вас в порядке).

Я думаю, что это лучший рабочий процесс, поскольку, насколько я понял, никто еще не сделал этого. Я думаю, что как только первый человек написал план WordPress CM (согласно IEEE), любой другой человек WordPress в мире может скопировать этот план и внести коррективы и реализовать шаблоны в их инструментах.

Разве это не слишком много работы /слишком тяжело: зависит, есть ли у вас компания или нет: она может спасти вашу задницу в один прекрасный день, чтобы иметь хороший план CM.

ответил edelwater 15 12010vEurope/Moscow11bEurope/MoscowMon, 15 Nov 2010 02:38:52 +0300 2010, 02:38:52
0

Я нахожусь на общем хосте, поэтому я не могу установить SVN или что-то в этом роде. Я использую Mercurial для контроля версий на своей домашней машине. Я использую FTP-синхронизацию Beyond Compare, чтобы синхронизировать локальные и удаленные папки.

ответил CAD bloke 14 AM00000060000003531 2010, 06:24:35
0

Я использую git. это просто. вы должны понимать простую команду, такую ​​как клон, comit, push, pull, и вы готовы к работе. это основной.

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

ответил justjoe 22 PM000000100000004531 2010, 22:07:45

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

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132