Gitlab常用指令整理
阿新 • • 發佈:2018-12-04
一、首先比較svn與git的區別
比較內容 | svn | git |
分散式 | 不是 | 是 |
線上閱讀 | 不支援 | 支援,並且可以線上編輯 |
完整性 | 一般 | 優秀 |
離線工作 | 不能看日誌 | 沒問題 |
儲存方式 | 按檔案 | 按元資料 |
分支 | 一個完整的目錄 | 隨意開闢無限個分支 |
其中SVN是集中式版本控制系統,Git是分散式版本控制系統,其工作流程如下:
集中式版本控制系統
分散式版本控制系統
如今CVS作為最早的開源而且免費的集中式版本控制系統,直到現在還有不少人在用。由於CVS自身設計的問題,會造成提交檔案不完整,版本庫莫名其妙損壞的情況。同樣是開源而且免費的SVN修正了CVS的一些穩定性問題,是目前用得最多的集中式版本庫控制系統。
而分散式版本控制系統有BitKeeper(促使2005年linus花兩週時間寫出了Git,一月內linux系統原始碼就由Git管理),還有類似Git的Mercurial和Bazaar等。這些分散式版本控制系統各有特點,但最流行的依然是Git,因為它最快,並且使用簡單。
二、Gitlab常用指令
2.1 Gitlab啟動、停止與重啟
sudo gitlab-ctl start 啟動Gitlab
sudo gitlab-ctl stop 停止Gitlab
sudo gitlab-ctl restart 重啟Gitlab
2.2 Git常用指令
git branch 檢視本地所有分支
git status 檢視當前狀態
git commit 提交
git branch -a 檢視所有的分支
git branch -r 檢視本地所有分支
git commit -m "註釋" 提交併且加註釋
git remote add origin [email protected]:ndshow
git push origin master 將檔案給推到伺服器上
git remote show origin 顯示遠端庫origin裡的資源
git push origin master:refs/for/master 即是將本地的master分支推送到遠端主機origin上的對應
master分支,origin 是遠端主機名,第一個master是本地分支名,第二個master是遠端分支名。
git checkout --track origin/dev 切換到遠端dev分支
git branch -D master develop 刪除本地庫
develop git checkout -b dev 建立一個新的本地分支
dev git merge origin/dev 將分支dev與當前分支進行合併
git checkout dev 切換到本地dev分支
git remote show 檢視遠端庫
git add . 把工作時的所有變化提交到暫存區,包括檔案內容修改以及新檔案,但是不包括刪除的檔案
git rm 檔名(包括路徑) 從git中刪除指定檔案
git clone [email protected]:jjf/test.git 從本地伺服器上將程式碼給拉下來
git config --list 看所有使用者
git ls-files 看已經被提交的
git rm [file name] 刪除一個檔案
git commit -a 提交當前repos的所有的改變
git add [file name] 新增一個檔案到
git index git commit -v 當你用-v引數的時候可以看commit的差異
git commit -m "commit的資訊" 新增commit資訊
git commit -a -a是代表add,把所有的change加到git index裡然後再commit
git commit -a -v 一般提交命令
git log 看你commit的日誌
git diff 檢視尚未暫存的更新
git rm a.a 移除檔案(從暫存區和工作區中刪除)
git rm --cached a.a 移除檔案(只從暫存區中刪除)
git commit -m "remove" 移除檔案(從Git中刪除)
git rm -f a.a 強行移除修改後檔案(從暫存區和工作區中刪除)
git diff --cached 或 git diff --staged 檢視尚未提交的更新
git stash push 將檔案給push到一個臨時空間中
git stash pop 將檔案從臨時空間pop下來
2.3 遠端倉庫相關命令
git clone git://github.com/jquery/jquery.git 檢出倉庫
git remote -v 檢視遠端倉庫
git remote add [name] [url] 新增遠端倉庫
git remote rm [name] 刪除遠端倉庫
git remote set-url --push[name][newUrl] 修改遠端倉庫
git pull [remoteName] [localBranchName] 拉取遠端倉庫
git push [remoteName] [localBranchName] 推送遠端倉庫
2.4 版本操作相關命令
git tag 檢視版本
git tag [name] 建立版本
git tag -d [name] 刪除版本
git tag -r 檢視遠端版本
git push origin [name] 建立遠端版本(本地版本push到遠端)
git push origin :refs/tags/[name] 刪除遠端版本