サーバ(linux / centOS)にgitとリポジトリをセットしたい
作成日:2023-11-07, 更新日:2023-11-09
処理の流れ
基本、「XSERVER+bitbucketの設定」と同じ
- gitのインスト前の準備: gettextのインスト
- gitのインスト
- ひとまず確認
- リポジトリをセット / クローンの作成
めも
- 「gettext」は全ユーザー共通で使える
- 「git」はユーザーごとにインストールが必要
インストール時の前提条件
- 今回はスーパーユーザーとして設定する必要がある
- 対象ユーザーは「/home/ユーザー名」にしたい
gitのインスト前の準備: gettextのインスト
▼通常
$ sudo yum install gettext
▼スーパーユーザーになっているとき
$ yum install gettext
インストールされたか確認 / バージョン確認
$ gettext --version
gitのインスト
▼「/home/ユーザー名」にカレントを移して実行
$ cd /home/ユーザー名 $ mkdir opt $ mkdir sysad $ wget https://codeload.github.com/git/git/zip/master -O git-master.zip $ unzip git-master.zip $ cd git-master $ autoconf $ ./configure --prefix=/home/ユーザー名/opt $ make -i all $ make -i install
インストールされたか確認 / バージョン確認
$ /home/ユーザー名/opt/bin/git --version
PATHを通す
▼「/home/ユーザー名」にカレントを移して実行
$ cp ~/.bashrc ~/.bashrc.bk ##編集の実行 $ vi ~/.bashrc ## 「export PATH」を「export PATH=$HOME/opt/bin:$PATH」に書換え ## もしくは「export PATH=/home/ユーザー名/opt/bin:$PATH」に書換え ##変更内容の反映 $ source ~/.bashrc
※「$HOME」が「/home/ユーザー名」になるっぽい
PATHが通っているか確認
$ git --version
通っていない場合、PATHの設定が間違っている可能性アリなので、下記実行
$ ls $HOME/opt/bin
$HOMEが想定通りじゃない場合は下記のようなエラー
$ ls: cannot access '/〇〇〇/opt/bin': No such file or directory
→「/〇〇〇/opt/bin」が想定しているPATHかを確認する
他、確認
composerも必要なので確認。たぶんインストされているはず…
composerのインスト
▼ひとまず確認
$ composer --version
インストする
インストされてなければインストする。さきにPHPがインストされていなければインストが必要
$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" $ php composer-setup.php $ sudo mv composer.phar /usr/local/bin/composer
インストールされたか確認 / バージョン確認
$ composer --version
リポジトリをセット / クローンの作成
$ cd /home/ユーザー名 $ git clone https://ユーザー名@example.com/xxx/xxx.git
エラーと対応
▼「git clone」をすると下記のようなエラーに。
$ git clone https://ユーザー名@example.com/xxx/xxx.git Cloning into 'xxx'... git: 'remote-https' is not a git command. See 'git --help'.
▼調べると…gitの再インスト → Gitの設定(ssl)を確認+設定追加 → 依存関係の対応…とすれば良いらしい
## gitの再インスト $ sudo yum remove git $ sudo yum install git ## Gitの設定(ssl)を確認+設定追加 $ git config --global http.sslBackend $ git config --global http.sslBackend openssl $ git config --global http.sslBackend ## 依存関係の対応 $ sudo yum install openssl-devel
それでも…エラーが解消されないproxyの確認+設定が必要とのこと…
もしくはgitのインストが失敗している…