Работа над разными проектами в одном файле с Github

Я пытался найти лучший способ логически справиться с этой ситуацией. У меня есть веб-сайт и его промежуточная версия для тестирования новых функций/исправлений ошибок. Я обнаружил, что часто буду работать над несколькими проектами в одних и тех же файлах одновременно.

Проблема в том, что, скажем, я работаю в example.js над проектом A. Я сделал большую часть этого, или, может быть, все это сделал, но для тестирования потребуется некоторое время, так как это долгий проект. Тем временем я начинаю работать над проектом B, который включает в себя редактирование того же файла, example.js. Проект B — это просто быстрое исправление ошибок, и он готов к загрузке на основной сервер. Но как мне загрузить example.js на работающий сервер с изменениями проекта B и без изменений проекта A, потому что проект A еще не был полностью протестирован?

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

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


1
34
1

Ответ:

Решено

Использование git (и, возможно, github) — это путь. Шаг, который вы пропустили, это шаг git merge. Это означает применение изменений, сделанных вами в ветке (т. е. Project B), к ветке master, которая является базой для вашего развертывания. Затем вы можете решить загрузить его на свой рабочий сервер или даже протестировать его на промежуточном сервере и загрузить после этого. Когда это будет сделано, вы загружаете свою ветку Project A на промежуточный сервер и работаете с этой веткой. И как только эта ветка будет завершена, вы git merge сделаете ее мастером.

Существует множество различных шаблонов расположения ветвей, но поток GitHub может быть хорошей отправной точкой.