linux、git bash如何生成ssh key

1.Centos安裝及配置

$ yum install -y git

2.生成ssh-key

# 生成ssh key,公鑰添加到gitlab,用於帳號認證。生成過一次就不須要再次生成了。
$ ssh-keygen
# 運行命令後,按3次回車便可
 
 
# 拷貝公鑰文件
$ cat ~/.ssh/id_rsa.pub

3.clone倉庫

# 克隆倉庫
$ git clone <url>

4.配置

#配置用戶信息(郵箱用公司郵箱)
$ git config --global user.name <username>
$ git config --global user.email <email>

5.增長/刪除文件

# 添加文件到暫存區
$ git add <file1> <file2>
 
# 添加目錄到暫存區
$ git add <dir>
 
# 添加當前目錄下全部已修改和未跟蹤文件到暫存區
$ git add .
 
# 刪除文件,同時刪除本地和暫存區文件
$ git rm <file>
 
# 將文件從暫存區刪除,保留工做區文件
$ git rm --cached/staged <file>
 
# 重命名文件
$ git mv <file> <file-new>

# 忽略原來未改變的文件權限
$ git config --add core.filemode false
$ git checkout vendor/

6.提交代碼

# 提交暫存區內容到本地倉庫
$ git commit -m <"message">
 
# 跳過暫存區,提交本地全部修改到本地倉庫(不包含新添加的文件)
$ git commit -am <"message">
 
# 追加提交,上一次修改漏提了一個文件
# 若是上一次提交後代碼沒有變化,此命令能夠改寫上一次的提交日誌
$ git commit --amend -m <"message">

7.分支

# 列出全部本地分支,"*"號開頭的爲當前分支
$ git branch
 
# 列出全部遠程分支
$ git branch -r
 
# 列出全部本地分支和遠程分支
$ git branch -a
 
# 切換分支
$ git checkout <branch_name>
 
# 以本地分支當前狀態,新建分支並檢出該新分支(未提交的修改也將帶到新分支)
$ git checkout -b <branch_name>
 
# 以遠程分支新建本地分支,檢出該分支,並和遠程分支創建跟蹤關係
$ git checkout -b <branch_name> <remote_name>/<remote_branch>
# 例如: git checkout -b FEA/BUG-002 origin/FEA/BUG-002
 
# 切換到上一個分支
$ git checkout -
 
# 創建當前分支與遠程分支的跟蹤關係
$ git branch --set-upstream-to=<remote_name>/<branch_name>
# 例如: git branch --set-upstream-to=origin/develop
 
# 合併本地分支到當前分支
$ git merge <branch_name>
 
# 合併遠程分支到當前分支
# 合併前,先要執行git pull/fetch
$ git merge <remote_name>/<branch_name>
 
# 刪除本地分支(只能刪除已合併分支)
$ git branch -d <branch_name>

8.標籤

# 列出全部tag
$ git tag
 
# 從指定commit新建tag
$ git tag <tag_name> <commit>
 
# 刪除本地tag
$ git tag -d <tag_name>
 
# 推送指定tag
$ git push <remote_name> <tag_name>
 
# 推送全部tag
$ git push --tags <remote_name>
 
# 以指定tag新建分支
$ git checkout -b <branch_name> <tag_name>

9.遠程同步

# 下載全部遠程倉庫更新
$ git fetch <remote_name>
# 例如: git fetch origin
 
# 顯示遠程倉庫地址
$ git remote -v
 
# 顯示指定遠程倉庫信息,包括有哪些遠程分支等
$ git remote show <remote_name>
 
# 添加遠程倉庫
$ git remote add <remote_name> <url>
 
# 清理遠程分支
$ git remote prune <remote_name>
# 若是遠程倉庫刪除了某些分支,此命令會將遠程分支從本地列表中刪除
 
# 拉取遠程倉庫指定分支的更新,併合併到當前分支
$ git pull <remote_name> <branch_name>
# 例如: git pull origin master
# 此命令會拉取origin倉庫全部更新,併合並最新遠程master到當前分支
 
# 推送本地分支到遠程倉庫
$ git push <remote_name> <branch_name>
# 例如: git push origin master
# 此命令推送當前master分支到遠程倉庫
 
# 推送全部分支到遠程倉庫
$ git push --all <remote_name>

10.撤銷

# 取消工做區文件的修改
$ git checkout -- <file>
 
# 將指定文件從暫存區撤出
$ git reset -- <file>

11.設置忽略列表

# 新建一個名爲.gitignore文件,可將此文件提交到git倉庫,語法以下:
*~             #忽略全部以波浪號(~)結尾的文件
*.a            #忽略全部以.a結尾的文件
!lib.a         #但lib.a除外
/TODO          #僅忽略項目根目錄下的TODO文件,不包含subdir/TODO
build/         #忽略build/目錄下的全部文件
doc/*.txt      #忽略doc/notes.txt,但不包括doc/server/arch.txt
相關文章
相關標籤/搜索