2012-02-09 4 views
1

Я только начинаю с git. Последние 8 часов я прочел каждый гид и учебник онлайн. Я все еще немного новичок в git, поэтому, пожалуйста, простите, если этот вопрос немой, или, может быть, я даже задаю неправильный вопрос. Просто знаю, что я потратил немало времени на изучение этого вопроса, прежде чем я спросил здесь.Как мне нажимать изменения GIT от одного клона к другому?

У меня есть две среды: TEST & DEV. До сих пор мы буквально просто копировали и вставляли обновленные файлы через FTP. Я знаю, что это плохо. Поэтому сегодня я хотел получить это под контролем git.

Итак ... Я скопировал все свои файлы. SSHed в TEST и выполнил git init, git add ., git commit -m "First Commit" и, наконец, git push. Затем я открыл новое окно терминала и SSHed в DEV. В dev я создал новую пустую папку и выполнил git clone [email protected]:/path.

Все казалось прекрасным.

Затем я добавил несколько новых файлов в DEV и попытался довести изменения до TEST, и он просто не работает. Когда я перехожу в TEST и типа git status, он показывает мои коммиты, но новых файлов там нет.

Вопрос: Как перенести файлы с моего клона DEV в TEST?

Примечание: У меня нет ветвей или чего-то действительно сложного. Это базовая настройка. Я делаю это неправильно/немой?

ответ

0

git status не отображается commits - он показывает статус рабочая копия.

DEV, вы должны git add каждого файла, затем git commit, а затем, наконец, git push. Это поместит ваши изменения в репозиторий (.git) на TEST.

Если вы уже сделали это, вам нужно сделать git merge (или git pull, который является эквивалентом git fetch и git merge) на тест, чтобы получить последние изменения в рабочей копии там - Изменения в отрасли , но ваша проверка устарела.

+0

Я просто побежал это: [Jesse-Аткинсон @ CBI-DEV-MS01 ROOT] $ мерзавец тянуть пароль Jesse-Аткинсон @ CBI-тест-MS01 в: Уже уточненный. [jesse-atkinson @ cbi-dev-ms01 ROOT] $ git add. [jesse-atkinson @ cbi-dev-ms01 ROOT] $ git commit -v -m «Давайте попробуем это» Он утверждает, что это был успех. И в нижней части сообщения о фиксации это говорит «To * testurl *». Однако, когда я подключаюсь к TEST, я вообще не вижу изменений. –

+0

@JesseAtkinson Я не вижу команды git push. – Borealid

+0

Поверь мне. Я «git push» около десяти миллионов раз. Это не толкает мои файлы до исходного репо из клона. –

0

Итак, если вы хотите вытащить материал из репозитория (TEST) в другой репозиторий (DEV), вам нужно создать новый REMOTE.

Когда вы выполняете PUSH или PULL, вы переносите содержимое между вашим репозиторием и одним из его REMOTE. Пульт по умолчанию известен как ORIGIN, но вы можете создать новый пульт, насколько это необходимо.

git remote add REMOTE_NAME REMOTE_URL_OR_PATH 

Вы можете перечислить пульт дистанционного управления с:

git remote -v 

И вы можете нажать на конкретный удаленный так:

git push REMOTE_NAME BRANCH_NAME 

или тянуть:

git pull REMOTE_NAME BRANCH_NAME 

Некоторые дополнительные документация: http://help.github.com/remotes/