Как не учитывать компилируемый код в системе GIT, но при этом выкатывать его на прод?

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

1. Создайте новую ветку в Git, например, "compiled-code", которая будет содержать только скомпилированный код. Выполните команду:

git branch compiled-code

2. Создайте файл .gitignore в корневой директории вашего проекта. В этом файле вы можете указать шаблоны файлов, которые вы хотите игнорировать при коммите в Git. В файле .gitignore добавьте шаблоны файлов, которые содержат компилируемый код. Например, если вы используете Java и ваш скомпилированный код находится в директории "target", добавьте следующую строку в .gitignore:

/target/

3. Выполните команду git checkout compiled-code, чтобы переключиться на ветку с компилированным кодом.

4. Добавьте и зафиксируйте скомпилированный код на ветке "compiled-code", используя команды:

git add .
git commit -m "Add compiled code"

5. Переключитесь обратно на основную ветку, где находится исходный код, с помощью команды git checkout main (или другой имя вашей основной ветки).

6. Теперь, при выкатывании на продакшн, вы можете скопировать только скомпилированный код с ветки "compiled-code" в вашу продакшн среду. Выполните команду git checkout compiled-code -- ., чтобы скопировать все файлы из ветки "compiled-code" в текущую директорию.

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