ローカルでgit管理を行う(bareリポジトリを利用)
はじめに
こんにちは、良い技術ブログが書けるよう日々試行錯誤しているエヌです。
この記事では「bareリポジトリを利用したローカルでgit管理を行う方法」についてを書いています。
GitHubなどをのサービスを使いリモートリポジトリと連携して履歴管理などを行ってますが、個人的な資料もgitで管理したくて、ローカルだけでgit管理できないのかなぁと思ったのがこの記事を書いたきっかけです。
以前に似たような記事を書きましたが、今回はbareリポジトリを利用してgit clone
ができるような管理を行っていきたいと思います。この方法だと例えば社内でサーバーを立ててチームでGitを使う、ということもできるようになります
自分に向けた備忘録も目的ではありますが、「サーバーとか要らなくて個人PCだけで履歴の管理が行えるようにしたい」な人の一助になれば嬉しいです。
Note
bareリポジトリとは何か、という点についてはここでは触れません(この記事を読む分には、そういうものがある、位の認識で問題ありません) もしご興味があればWebで検索していただければと思います。
前提(環境)
以下の環境で行いました。
OS: Windows 10 Git: 2.32.0.windows.1
事前に用意したフォルダの構成
最初に、以下のようにwork
フォルダを作り、その下にtest.git
、hoge
、fuga
の3つのフォルダを作っておきます。
work ├ test.git ├ hoge └ fuga
test.git
フォルダでの作業
test.git
フォルダに移動し、下記のコマンドを実行します。
git init --bare --shared
このベアリポジトリとして作成しています。
Note
複数人で作業しなければ
--shared
オプションは不要ですが、あって困ることは個人開発でも特にないので--shared
オプションは付けています。
hoge
フォルダでの作業
続いてはカレントディレクトリをhoge
フォルダに移動し、下記のコマンドを実行します。
git init git remote add origin ../test.git
hoge
フォルダでリポジトリを作成した後、このリポジトリをtest.git
(上で作ったベアリポジトリ)に登録しています。
試しにコミットしてみる
リポジトリを作成したので、ここでコミットをしてみたいと思います。
hoge
フォルダ内に適当に(ここではalpha.txt
とします)を作り、カレントディレクトリがhoge
フォルダの状態でコミットのコマンドとプッシュ(以下)を実行します。
git add . git commit -m "first commit" git push origin master
クローンしてみる
では次はリポジトリのクローンを行ってみたいと思います。クローンを行う場所はfuga
フォルダにします。
カレントディレクトリをfuga
フォルダにした後、以下のコマンドを実行してください
git clone ../test.git
すると、fuga
フォルダ内にtest
フォルダが作成されたと思います。
最終的なフォルダ構成は以下のようになっています。
work ├ test.git │ └ ... ├ hoge │ ├ .git │ └ alpha.txt └ fuga └ test ├ .git └ alpha.txt
bareリポジトリを利用することでローカルの別の場所にクローンすることが出来ました。
おわりに
「bareリポジトリを利用したローカルでgit管理を行う方法」について、書いていきました。いかがだったでしょうか。
様々な場面でどんどんGitを活用し効率良い開発を行っていきましょう
さいごに、記事を書く上で参考にしたサイトのリンクを以下に掲載します。併せて読んでいただくと良いかと思います。