Есть хранилище с кодом.
Я хочу хранить некоторые каталоги и файлы в репозитории, но чтобы их изменения не отражались в истории разработки.
Например, есть каталог .vscode
с настройками VS Code и файл с примечаниями my_notes.txt
, и я хочу иметь возможность доступа к ним с разных компьютеров.
Как можно Я удостоверяюсь, что указанные каталоги и файлы сохраняются в хранилище (желательно с историей изменений), но чтобы их история не смешивалась с историей разработки кода и в то же время они были доступны в этом хранилище?
Например, я изменил my_notes.txt
на одном компьютере, а затем сделал коммит:
git commit my_notes.txt <some_magic>
git push <some_magic>
После этого я хочу получить этот файл на другом компьютере:
git pull <some_magic>
Возможно, для этого подходят ветки-сироты, но я не мог найти, как это сделать, я хочу.
Если я сделаю так:
echo my_notes.txt >> .gitignore
git add .gitignore
git commit -m 'update gitignore'
git checkout --orphan orhf-branch
git rm -r --cached .
rm -rf *
echo 'some text' > my_notes.txt
git add .
git commit -m 'Orphan commit'
git checkout master
, тогда файл my_notes.txt
исчезнет из главной ветви.
Можно ли сделать так, чтобы файл my_notes.txt
присутствовал, когда Я переключаюсь на ветку master
, но история ее изменений была сохранена в orhf-branch
? И чтобы я мог изменить его в ветке master
, но он не отображается как измененный или не отслеженный в master
?