A git add
является чисто локальным (не влияет на удаленное хранилище GitHub)
Только коммит + толчок будет иметь эффект.
Проверьте свои git remote -v
в Folder1
и Folder2
, чтобы увидеть, какой URL вы используете.
У вас должен быть файл ~/.ssh/config
, который помогает ссылаться на правильную клавишу.
Если вы отправляете в один репозиторий GitHub, то ваши локальные папки должны совпадать с вашей целевой структурой, то есть:
Folder1
Folder2
Две папки (ни одна не переименована в другую)
ОП добавляет:
Когда я запускаю git remote -v
в Folder1
, я получаю свой результат как:
origin https://github.com/username/Project.git (fetch)
, тогда как та же команда в Folder 2
дает
origin git@github.com:username/Project.git (fetch) instead.
Было бы лучше использовать тот же URL:
cd Folder2
git remote set-url origin https://github.com/username/Project.git
Однако было бы также предпочтительнее сохранить Folder2
в своем собственном проекте GitHub, а не пытаться повторно использовать "Project.git
"
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart.
Это ожидается, потому что и Folder1, и Folder2 находятся в одной ветви (master), но с разной историей (проверьте git log
output)
Самый простой способ достичь того, что вы хотите - это иметь такую структуру:
cd /local/path/to/
git init myProjects (new empty folder)
git remote add origin https://github.com/<me>/myProjects (new empty repository)
mkdir Folder1
mkdir Folder2
# copy the files to their relevant folders
git add . (from `/local/path/to/myProjects`)
git commit -m "Folder1 and 2"
git push -u origin master
Итак один репозиторий, с одной ветвью (master
), но смешанной историей (некоторые коммиты будут для Folder1, или 2, или оба)
Легко восстановить: на новой машине
cd /local/path/to
git clone https://github.com/<me>/myProjects
Чтобы сохранить существующую историю Folder1:
cd /local/path/to
mv Projects Projects.old
mv Projects.old/Folder1 Projects
cd Projects
mkdir Folder1
git mv * Folder1
git add .
git commit -m "Move Folder1"
mkdir Folder2
# copy files into Folder2
git add .
git commit -m "Folder2"
git push