質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

GitLab

GitLabは Gitoliteをブラウザから管理できるようにする Rubyアプリケーションで、 GitHubのようなサービスをクローズドな環境に独自で構築できるように 公開されたものです。

Q&A

解決済

1回答

363閲覧

Vagrant上でgit addができません

dog57

総合スコア131

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

GitLab

GitLabは Gitoliteをブラウザから管理できるようにする Rubyアプリケーションで、 GitHubのようなサービスをクローズドな環境に独自で構築できるように 公開されたものです。

0グッド

0クリップ

投稿2017/12/10 09:16

Vagrant上でgit addができません。

ローカルリポジトリは、vagrantログイン直後に作成しました。
イメージ説明

Gitディレクトリの中身はこちらになるのですが、
イメージ説明

自分のローカル上にあるフォルダやファイルをGit add するためにはどうしたらよいのでしょうか?
私の場合ですと、下記のPHPフォルダを最終的には git push したいのですが
git add できません。

/Users/名前/PHP

これでgit add するとこのようなエラーが出るのですが、対処の仕方がわかりません。

エラー内容

fatal: '/Users/名前/PHP' is outside repository

どなたかご教授いただけると嬉しいです。
よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

ログイン直後にgit initしたとなると、ローカルリポジトリは/home/vagrant以下で作成されていることになります。(vagrantの部分には、ログイン時のユーザ名が入ります)
/Users//home/vagrant以下にはない全く別のディレクトリなので、リポジトリの管理外です。

ローカルリポジトリは、プロジェクトフォルダ以下で作成すべきです。でないとVagrant環境で複数のプロジェクトを扱うことができません。
また、システム用のプログラムと区別するため、自分のプロジェクトは/home/vagrant以下で作った方が良いです。

投稿2017/12/10 14:46

Udomomo

総合スコア1524

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

dog57

2017/12/11 01:13 編集

例えばですが、 /home/vagrant/workspace にリモートリポジトリを作成したとします。 /home/vagrant/PHP にあるPHPをフォルダを workspaceにあるリモートリポジトリからgit add できるのでしょうか?
dog57

2017/12/11 01:18 編集

もしくは、PHPフォルダを git add git push したい場合は、 PHP フォルダ以下に ローカルリポジトリを作成したほうがよいということでしょうか?
Udomomo

2017/12/11 01:49

/home/vagrant/workspaceにリポジトリを作ると、パスが/home/vagrant/workspaceから始まるファイルしか管理下に置かれないので、/home/vagrant/PHPは管理外になります。 今回であれば、PHPフォルダ以下にローカルリポジトリを作るべきです。名前もphp_project01みたいにした方がよいでしょう。 そして今後別のproject02をやるときは、php_project02フォルダを作って、そこに別のローカルリポジトリを作ります。
dog57

2017/12/11 02:06 編集

理解できました!ありがとうございます。 ちなみに、ローカルリポジトリは何個も作成できるのですか?
Udomomo

2017/12/11 02:13

何個でも作れます。各ローカルリポジトリにおいて、git remote addコマンドでリモートリポジトリを設定すれば、それぞれで異なるリモートリポジトリにプッシュすることができます。 チームで開発する場合は、個々人が自分のローカルリポジトリから、共通のリモートリポジトリにプッシュするということもあります。
dog57

2017/12/11 04:14

何個でも作れるんですね! ssh公開鍵の作成もローカルリポジトリ1個に対して、1つのssh公開鍵を作成しないとだめなのでしょうか?
Udomomo

2017/12/11 06:09

sshキーは、自分の端末上のローカルリポジトリであれば、1回作れば使いまわせます。gitは~/.ssh/ディレクトリを見に行き、そこにsshキーがあればそれを使うので、異なるローカルリポジトリであっても参照するsshキーは同じです。 ただし、リモートリポジトリ側で別のアカウントを使うときや、別のリモートリポジトリサービスを使いたいなどというときは、改めてsshキーを作る必要があります。
dog57

2017/12/11 07:44

ありがとうございます。 理解できました! ご回答いただきありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問