Git при изменении хранилища
Я привык вытаскивать из репозитория git кого-то. Сегодня он переместил свой репозиторий на другой адрес. Интересно, есть ли у меня какой-то способ вытащить из нового адреса и получить информацию о том, какие изменения он изменил в отношении последнего времени до его перемещения?
То, что я сделал, это "git clone newaddress" под моим репозиторием, извлеченным из его старого. Результат выглядит так:
получил xxx
walk xxx
получил xxx
получил xxx
walk xxx
Получение списка альтернатив для newaddress
Получение списка пакетов для newaddress
Получение индекса для пакета xxx
Получение пакета xxx
который содержит xxx
получил xxx
получил xxx
walk xxx
...
Затем я "git pull" и получил следующее сообщение, которое я не понимаю:
Ты попросил меня потянуть, не сказав мне, какая ветка тебе хотите объединиться, и 'branch.master.merge' в ваш файл конфигурации также не говорит мне. пожалуйста имя, которое вы хотите объединить в командной строке и повторите попытку (например, "git pull" ). Подробнее о refspec см. git -pull (1).
Если вы часто сливаетесь с одной ветвью, вы можете захотеть настройте следующие переменные в своей конфигурации Файл:
branch.master.remote = <nickname>
branch.master.merge = <remote-ref>
remote.<nickname>.url = <url>
remote.<nickname>.fetch = <refspec>
Подробнее см. git -config (1).
Что я могу сделать теперь, чтобы все еще иметь возможность получить информацию о том, какие изменения он сделал в отношении последнего времени до его перемещения?
Спасибо и приветствую!
Ответы
Ответ 1
Если я правильно понимаю ваш вопрос, то, что вы хотите сделать, это заменить ваше текущее дистанционное происхождение новым. Я не знаю, можете ли вы заменить его из командной строки, но вы можете изменить его в своем .git/config
(это находится в каталоге вашего проекта)
СТАРЫЙ
[remote "origin"]
url = git+ssh://original_repository.com/my_project.git
...
NEW
[remote "origin"]
url = git+ssh://new_repository.com/my_project.git
...
Часть git+ssh
может быть чем-то вроде [email protected]
(это то, что было бы, если бы вы использовали github), или я уверен в других вещах. Это может помочь прояснить некоторые вещи, которые я забыл или не объяснил достаточно хорошо: Изменение вашего происхождения.
Надеюсь, это поможет ответить на ваш вопрос. Приветствия.
Ответ 2
Запустите это в своем клонированном хранилище git:
git config branch.master.remote origin
чтобы позаботиться о том, "вы попросили меня потянуть, не сказав мне"... сообщение.
Затем, если вы знаете, куда удалено удаленное репо, вы можете сделать это в своем новом клонированном локальном репо a git diff
с этой даты.
$ git diff "@{yesterday}"
$ git whatchanged --since="2 weeks ago"
Примечание: предстоящий git1.6.5 упоминает
Формат даты записи на человека для различных параметров, например. "--since=yesterday
", "[email protected]{2000.09.17}
", учатся выводить неверно введенный ввод.
См. также вопрос SO Как вы можете git всегда извлекать из определенной ветки?"