32
40

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【Git】ローカル環境にリモートリポジトリを置く方法 (Mac)

Last updated at Posted at 2014-08-01

共同作業をしていて、GitHubやGitLabにまだ開発環境が整っていないときは、ローカル環境にリモートリポジトリを設置すると作業が捗ります。

一人で何か作業したいな〜って時にもいいかもしれません。

##前提

  • リモートをする側とされる側がSSH接続が可能
  • リモートをする側とされる側が同じネットワークにある

多分これが確認出来ていれば、大丈夫。おそらく・・・

##リモートリポジトリを設置する側のPCの設定をする

  • 設定 -> 共有 -> リモートログインにチェックを入れる

スクリーンショット-2014-07-31-17.20.02(2).png

##リモートリポジトリ置き場を作成

  • 設置したい場所にリモートリポジトリのディレクトリを作成
mkdir repository //ディレクトリの作成
cd repository //ディレクトリの移動
  • ○○.gitディレクトリを作成して、共有用ベアリポジトリを作成します
mkdir project.git //ディレクトリの作成
cd project.git //ディレクトリの移動
git init --bare --share //共有用ベアリポジトリの作成

--bareはリモートリポジトリだよというオプション

####権限が必要なディレクトリの場合
User直下など権限が必要なディレクトリにリモートリポジトリを設置する場合には、sudoコマンドが必要になることがあります。
また、リモートリポジトリ用のディレクトリにchownコマンドで所有者を設定してあげる必要があります。

sudo chown USER:USER /repository

##作業ディレクトリに移動してpushする
リモートが空の状態なので、適当にpushしてみましょう。

cd //作業ディレクトリに移動
git init //リポジトリの作成
git remote add origin ssh://USER_NAME@SERVER_NAME:PORT/共有用リポジトリまでのパス/repository/project.git //リモートリポジトリの設定
touch README.md //ファイルの作成
git add .
git commit -m "first commit"
git push origin master

#####sshのユーザーネームとサーバーネームがよく分からない場合は、「設定 -> 共有」から確認できます。

スクリーンショット-2014-07-31-17.20.02(3).png

#####port番号は、ネットワークユーティリティから調べることが出来ます。
Finderの検索から「ネットワーク」と入力 -> ネットワークユーティリティを選択 ->「Portsscan」からIPアドレスを入力して確認

スクリーンショット-2014-07-31-21.18.01(4).png

##あとはcloneすればOK
ここまで準備が終われば、他のPCからでも使う事ができます。

git clone ssh://USER_NAME@SERVER_NAME:PORT/共有用リポジトリまでのパス/repository/project.git

##参考

32
40
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
32
40

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?