Как сделать первый шаг в удаленный репозиторий с помощью Git?

Я читал бесчисленные учебники, и я продолжаю идти. Вот что у меня есть:

- Я запускаю RubyMine на рабочем столе Windows
- Я установил Git на мою учетную запись хостинга WebFaction по их инструкциям
- Git работает нормально на обеих машинах

Вот что я делаю:
1. На сервере:
          а. Проект mkdir
          б. Git init
          с. Git добавить.
          г. Git commit &lt --- --- ничего не делать "
2. На клиенте:
          а. Создайте новый проект в RubyMine.
          б. "git init" в верхней директории проекта
          с. "Нажать изменения" на сервер < ---- "не удалось нажать некоторые ссылки на...".

Какие шаги мне не хватает?

Ответ 1

На сервере:

mkdir my_project.git
cd my_project.git
git --bare init

На клиенте:

mkdir my_project
cd my_project
touch .gitignore
git init
git add .
git commit -m "Initial commit"
git remote add origin [email protected]:/path/to/my_project.git
git push origin master

Обратите внимание, что при добавлении источника существует несколько форматов и схем, которые вы могли бы использовать. Я рекомендую вам узнать, что предоставляет ваш хостинг.

Ответ 3

Вы можете попробовать следующее:

на сервере:

добавление новой группы в /etc/group как (Пример)

mygroup:1001:michael,nir

создать новый репозиторий git:

mkdir /srv/git
cd /srv/git
mkdir project_dir
cd project_dir
git --bare init (initial git repository )
chgrp -R mygroup objects/ refs/ (change owner of directory )
chmod -R g+w objects/ refs/ (give permission write)

на клиенте:

mkdir my_project
cd my_project
touch .gitignore
git init
git add .
git commit -m "Initial commit"
git remote add origin [email protected]:/path/to/my_project.git
git push origin master

(Спасибо Джошу Линдси за клиентскую сторону)

после клиента, сделайте на сервере следующие команды:

cd /srv/git/project_dir
chmod -R g+w objects/ refs/

Если эта ошибка возникла после git pull:

There is no tracking information for the current branch. Please specify which branch you want to merge with. See git-pull(1) for details

git pull <remote> <branch>
If you wish to set tracking information for this branch you can do so with:

git branch --set-upstream new origin/<branch>

попробовать:

git push -u origin master

Это поможет.

Ответ 4

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

git push --set-upstream origin <branch-name>

Ответ 5

Вам необходимо настроить удаленный репозиторий на вашем клиенте:

git remote add origin ssh://myserver.com/path/to/project

Ответ 6

@Джош Линдси уже отлично ответила. Но я хочу добавить некоторую информацию, так как часто использую ssh.

Поэтому просто измените:

git remote add origin [email protected]:/path/to/my_project.git

в

git remote add origin ssh://[email protected]/path/to/my_project

Обратите внимание, что двоеточие между доменом и контуром больше не существует.