How to Create Repository

ローカルリポジトリの作成

  1. リモートリポジトリに登録したいディレクトリにして次のコマンドでバージョン管理のための初期化を行う。

    $ git init
    

    これで,ローカルリポジトリ(.git/)が作られ,git initを実行したディレクトリが作業ディレクトリになる。

    以下のようにgit initでローカルリポジトリ用のディレクトリを新規作成することもできる。

    $ git init <target directory>
    $ cd <target directory>
    
  2. .gitignoreの作成 gitコマンドでは無視したいファイルが有る時(LaTeXの一時ファイル等)は,.gitignoreという名前のファイルを作っておく。 以下は例。latex関連の一時ファイルを無視するように設定している。

    $ cat .gitignore
    *.aux
    *.idx
    *.log
    *.toc
    *.ist
    *.bbl
    *.blg
    *.dvi
    *.ilg
    *.ind
    *.lot
    *.out
    *.synctex.gz
    *~
    

ローカルリポジトリに登録するファイルやディレクトリの指定

下記のいずれかのコマンドで登録するファイルやディレクトリを指定

$ git add .            # 現在のディレクトリにある全てのファイル/ディレクトリを登録
$ git add figures/     # ディレクトリ figures/ 以下のファイルを登録
$ git add *.tex        # すべての .tex ファイルを登録
$ git add <ファイル名> #特定のファイルのみを登録

ローカルリポジトリにファイル登録

git addで指定したファイルやディレクトリを,ローカルリポジトリに登録する。

$ git commit -m "first commit"

-mは1行コメントをつけるオプション。 更新したファイルをローカルリポジトリに反映するときにも,同様にgit addとgit commitを実行する。ここまではローカルリポジトリの管理。

gitサーバ上で新規リモートリポジトリを登録

  1. GitHubにログイン

  2. 左上のRepositoriesの隣りにあるNewのタブをクリック

  3. repository作成ページで以下のことを記入

    • Repository name : リポジトリの名前
    • Description : リポジトリの内容
    • Public / Privateの選択
  4. Create repositoryをクリック

  5. リポジトリ作成後のすべきこと(コマンドライン)が記載されたページが表示されるので、URLの覧をチェックしておく。以下はその一例。

    echo "# re" >> README.md
    git init
    git add README.md
    git commit -m "first commit"
    git branch -M main
    git remote add origin https://github.com/<ユーザーネーム>/<repository名>.git
    git push -u origin main
    
  6. コマンドラインの上にHTTPSSSHかを選択する覧もあるので、SSHにする場合はここで選択しておく

トークンの作成

2021年8月13日以降、GitHubのリポジトリにアクセスするには、ユーザ名とパスワードではなくアクセストークンが必要になった。

  1. GitHubにログイン
  2. 右上のアイコンをクリックし、一覧からSettingsをクリック
  3. 左下のDeveloper settingsをクリック
  4. 左の覧からPersonal avvess tokensをクリック
  5. 右上のGenerate new tokenをクリックしてアクセストークンを作成
  6. 以下のことを記入 Note : トークン名 Expiration : トークンが使用できる期限。この期限が切れると新しくトークンを作成する必要がある。(上限あり) Select scopes : 少なくともrepoの覧はチェックを入れること。 トークンは一度ページを移動すると二度と見れなくなってしまうため、作成後はコピーして保存しておくこと!!!

Gitサーバへの登録

ローカルリポジトリとgitサーバ上のリモートリポジトリの紐付け

ローカルリポジトリ(要はgit管理したいプログラム群のあるディレクトリ)をgitサーバ上のリモートリポジトリと紐付ける。リモートリポジトリを作成した際に表示されたすべきこと(コマンドライン)を順次実行していく。 以下はその一例。

git branch -M main
git remote add origin https://github.com/<ユーザーネーム>/<repository名>.git
git push -u origin main

ただしURLの覧にはhttps://github.com/...の間に<トークン>@を加えて実行する。

$ git remote add origin https://<トークン>@github.com/<ユーザーネーム>/<repository名>.git

ユーザーネームとパスワードを求められたらユーザーネームには自分の登録名、パスワードにはトークンを打ち込む

git remoteは,サーバ上のファイル置き場(リモートリポジトリ)を登録する命令。 この例では,URL(https://github.com/<ユーザーネーム>/<repository名>.git)を,originという名前(識別子)で登録している。 識別子 origin は他の名前にしても良いが,慣習的にこの名称が使われている。 someone/somerepoの部分は,GitHub上に作ったリポジトリの名前に従って設定する。

ただし,非公開リポジトリ(private repository)に登録する場合は,以下のようにGitHubの認証情報を加える。

$ git remote add origin https://<username>@github.com/s<ユーザーネーム>/<repository名>.git

セキュリティを高めるためには,ssh keyをGitHubに登録しておいて,ssh通信にするほうが無難。この場合のgit rmoteは以下のなる。

$ git remote add origin git@github.com:someone/somerepo.git

登録情報の確認

$ git remote -v

登録情報を間違えていたら,以下のコマンドで一旦削除して再登録する

$ git remote rm origin