Для настройки репозитория, например D:\gitrepo
, вы используете так называемые пульты. Вы можете использовать этот каталог как удаленный, который вы и другие разработчики можете использовать как «Центральный SVN-подобный сервер». Создайте каталог gitrepo
и выполните команду git init --bare
. Затем из вашего местного репозитория Git вы можете сделать git remote add origin D:\gitrepo
. Затем вы нажимаете через git push origin master
. Теперь любой может клонировать с D:\gitrepo
и вернуть свои изменения обратно.
Я не уверен, что вы подразумеваете под "(все, что нужно, это удалить одну папку, и все исчезло)".
Если вы удалите папку src/
, ваши данные не исчезнут. Вы можете легко откатить его назад с помощью git reset --hard HEAD
, если вы его не зафиксировали. Если вы сделали это, используйте git revert SOMESHA
. Очевидно, SOMESHA
является хешем SHA1 для коммита. Если вы случайно удалили D:\gitrepo
, это не проблема, потому что ваша рабочая копия точно такая же. Просто сделай то, что я сказал в первом абзаце снова. Единственный способ потерять все - это удалить удаленный репозиторий и клонировать из него все репозиториев.
Для резервного копирования вам просто нужно сделать резервную копию всей папки D:\gitrepo
.
Во-вторых, нет простого способа иметь филиалы в отдельных каталогах. Лучшее, что вы можете сделать, - это иметь два клона и установить каждый клон в отдельную ветвь. Я не знаком с Beyond Compare, но git diff
работает между двумя ветвями без использования отдельных каталогов. Просто используйте git diff master somebranch
. Чтобы увидеть, какие ветви у вас есть, используйте git branch