Ubuntu上安裝Git

Ubuntu安裝 git

(git操作)

REF:  https://tw.saowen.com/a/da011bedb0288bd727b1294fa59fe7d3e56af6ca9ae8bfed88189a054c07b07b

Ref:  https://www.liquidweb.com/kb/install-git-ubuntu-16-04-lts/

安裝 apt-get install git

查看目前版本 git –version

最初設定

git config –global user.name “testuser”

git config –global user.email “email”

查看設定檔內容 cat ~/ .gitconfig

git config –list

(設定都會記錄在 .gitconfig 上)

從source code下載下來安裝

REF:  https://linuxconfig.org/how-to-install-git-on-ubuntu-18-04-bionic-beaver-linux

REF:  https://codertw.com/%E4%BC%BA%E6%9C%8D%E5%99%A8/172015/

下面安裝一些需要的套件

sudo apt -y install make libssl-dev libghc-zlib-dev libcurl4-gnutls-dev libexpat1-dev gettext unzip

  1. wget https://github.com/git/git/archive/v2.18.0.zip
  2. unzip v2.18.0.zip
  3. cd git-2.18.0
  4. make prefix=/usr/local all

sudo make prefix=/usr/local install

(這是預設編譯的path,但是我們要編譯在掛載的那個path,所以我是make在下面這            行的path)

make prefix= /掛載的path all

sudo make prefix=/掛載的path install

  1. 新增環境變數 (REF: https://read01.com/zh-tw/kEGy5k.html#.W01GCdIzYdU )

vim /etc/profile

export PATH=$PATH:/analog/tools/git/bin

source /etc/profile

6. git –version

which git

GIT設定

REF:  http://neilpipi1985.blogspot.com/2017/03/git-server.html

REF:  https://www.arthurtoday.com/2015/05/ubuntu-create-private-git-repository.html

SERVER(嚴格來說不是server,應該叫遠端)

REF: https://www.arthurtoday.com/2015/05/ubuntu-create-private-git-repository.html

  1. 新增user: adduser gituser 還有新增 addgroup git
  2. 登入到那個user:  su – gituser(之後都用這個身分做事&ssh)
  3. 把git project都放在/gitrepo下面: mkdir /gitrepo
  4. 在gitrepo下建目錄 當作一個一個的repo ex: mkdir /gitrepo/project0
  5. 在project0下面初始化:

git –bare init

(Initialized empty Git repository in /var/git/project0/ 代表成功初始化一個bare git repo)

6. 修改config:  vim config

7. 在最下面加上:

[receive]

denyCurrentBranch = false

關於Bare repo (試過直接 git init的 結果會碰到下面兩個ref的問題

REF: https://ithelp.ithome.com.tw/articles/10132804

REF: http://ps.hsuweni.idv.tw/?p=4904

REF: https://www.cnblogs.com/abeen/archive/2010/06/17/1759496.html

如果步驟裡面有錯誤 會出現幾個錯誤:

! [remote rejected] master -> master (failed to update ref)
error: failed to push some refs to ‘gituser@ip:/目錄’

REF: https://stackoverflow.com/questions/13146992/fatal-unable-to-create-temporary-file-home-username-git-myrepo-git-objects

REF: http://www.jackpu.com/jie-jue-git-unable-to-create-temporary-file/

CLIENT(本地端)

  1. 建一個目錄ex: mkdir /tmp/projectrepo
  2. cd /tmp/projectrepo
  3. git init
  4. git remote add gituser@ip:/gitrepo/project0
  5. 如果有錯誤 要再次push前 要下這個指令:

         git repack master

 

SSH憑證設定

REF:  https://www.arthurtoday.com/2009/11/ssh-linux-client.html

這樣ssh過去遠端時,就不用再打遠端的密碼了,可以保障密碼不會被別人試出來

有人commit時 自動寄信通知

https://blog.longwin.com.tw/2011/05/git-commit-send-mail-notify-2011/

 

最後(8/31)學習到的新東西

pull push 一個branch裡特定的資料夾或檔案

https://stackoverflow.com/questions/4114887/is-it-possible-to-do-a-sparse-checkout-without-checking-out-the-whole-repository

$6F2249F9ED3F0D33.jpg

 

廣告

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s