Перекомпоновка с Github-репозиторием на новой машине - PullRequest
3 голосов
/ 02 июля 2011

Некоторое время назад я установил репозиторий github: https://github.com/LiamBailey/TweetSlider, с кодом для небольшого скрипта jQuery, который извлекает последние твиты для данного пользователя и отображает их в слайдере. Теперь я добавил несколько новых функций, а также сделал его плагином jQuery. Первая версия называлась TweetSlider v1, а вторая - TweetSlider v2.1.

Первый вопрос: что я должен сделать, чтобы добавить эту новую версию в github, перезаписать существующий код новой или создать ответвление для новой версии?

Если мне нужно создать форк, я нашел для этого документацию и смогу это сделать, но если мне нужно перезаписать, что я и предполагал сделать, то я немного обеспокоен.

С момента создания хранилища я сменил компьютеры и больше не имею доступа к локальной версии исходного хранилища. Как я могу повторно подключить хранилище к новому локальному каталогу и удалить существующие файлы? Как только я знаю, как это сделать, я нашел документацию для повторной отправки новых файлов.

Я надеюсь, что кто-то может помочь с этим.

1 Ответ

4 голосов
/ 02 июля 2011

Правило номер один: никогда не разрабатывайте ничего без системы контроля версий:)

Я не знаю, как именно вы разработали вторую версию - есть ли она под контролем версий в репозитории Git?Вы основали вторую версию поверх коммитов первой версии?

Однако вы можете добавить GitHub в качестве удаленного репозитория (который, вероятно, отвечает «Как я могу повторно подключить репозиторий к новому локальному каталогу»)в случае, если локальным каталогом является Git-репо (который вы можете установить с помощью команды git init).

git remote add origin git@github.com:LiamBailey/TweetSlider.git

И организация ваших репозиториев зависит от вас - это зависит от того, имеет ли смысл исходная версияиспользовать, если в новой версии есть некоторые недостатки обратной совместимости и т. д.

Если вы хотите иметь их в качестве отдельных репозиториев, воспользуйтесь им.

Если вы хотите заменить старую версию нановый в том же репозитории, вам нужно выбрать следующие параметры:

Грязный путь - «создать резервную копию» старой версии в какой-либо ветви и сделать коммит с новой версией в master.

git init
-- copy the new version to this directory--
git add .
git commit
git remote add origin git@github.com:LiamBailey/TweetSlider.git
git fetch origin
git checkout origin/master -b v1
git push origin v1
git checkout master
git push -f origin master

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

git clone git@github.com:LiamBailey/TweetSlider.git
cd TweetSlider
-- make changes to your source code --
git add .
git commit
-- repeat until you have the second version --
git push origin master
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...