Я хотел бы попробовать несколько вещей с git, и я не хочу ничего вносить в рабочий репозиторий.Выполняет ли копирование Git bare-repo изменение журнала?
Чтобы попытаться сохранить все в безопасности, я сделал копию открытого репо, из которого я работаю, и из этого репо. Я намереваюсь делать все мои нажатия и пометки. Я использовал:
cp --preseve -r original.git copy_of_original.git
Хотя я понимаю, можно отменить плохие коммиты и этажерку, я не хочу, чтобы оставить репозиторий со всеми этими фиксаций, вновь стали, и я не хочу делать какие-либо рефакторинга, следовательно, мое желание просто работать из дублированного, открытого хранилища.
Проблема заключается в том, я выполнить следующее:
git diff --name-only [email protected]{"5 day ago"} master
и получить обратно:
warning: Log for 'master' only goes back to Fri, 15 Feb 2013 20:42:43 -0500.
оригинальный репо, которые я не хочу трогать, действительно есть файлы, которые были изменен на 5 дней назад.
Если я выполняю git log
на моем скопированном репо, запись этих 5-дневных изменений все еще есть.
Что здесь происходит?
Есть ли лучший способ сделать независимую копию хранилища?
Update 1
я понял, что я был неточным с моим вопросом. Я побежал:
git diff --name-only [email protected]{"5 day ago"}
в каталоге производится из:
git clone copy_of_original.git clone_of_copy
Тогда, если я сделаю 'git pull' на моей локальной копии репозитория, будет результат запуска' git diff --name-only master @ {"5 дн. назад"} ' использовать дату, которую я делал «git pull», а не когда делали люди? – EMiller
'@ {time}' никогда не использует время фиксации. Не существует способа, который мог бы работать в целом, поскольку в истории может быть несколько ветвей, и коммиты не всегда находятся в порядке дат (либо из-за переупорядочения коммитов, либо с некорректным набором часов). – qqx
Но разве нет способа надежного запроса, если какие-либо файлы в master были обновлены через слияние или фиксацию с периода времени? – EMiller