最近看到不少人在配置Git時,遇到很問題,網上教程千篇一概。這兒本身單獨記錄一份。html
Git配置SSH Keygit
1.檢查本機是否有ssh key設置,切換到.ssh目錄
$ cd ~/.ssh 或cd .sshgithub
2.配置git用戶名和郵箱,配置多個用戶時添加 --add 參數
$ git config --global --add user.name "username"
$ git config --global --add user.email "email"服務器
$ git config --global --unset user.name "username" #移除用戶
$ git config --global --unset user.email "email" #移除郵箱ssh
3.查看用戶名和郵箱
$ git config --list測試
(若是沒有安裝TortoiseGit則跳過)由於TortoiseGit和Git的衝突須要把TortoiseGit設置改正以下:
1.在右鍵選擇 TortoiseGit -> Settings -> Network
2.將SSH client指向 ~Git\usr\bin\ssh.exe (Git安裝路徑下的\usr\bin\ssh.exe)url
4.生成成對的私鑰公鑰
$ ssh-keygen -t rsa -C "test@qq.com"
注:生成id_rsa私鑰公鑰時須要命不一樣文件名,密碼可設可不設。spa
5.添加ssh key到對應的GitHub或GitLab上面
登陸GitHub系統;點擊右上角帳號頭像的「▼」→Settings→SSH kyes→Add SSH key。
複製id_rsa.pub的公鑰內容到Key填寫框內。htm
6.測試公鑰配置是否成功
$ssh -T git@github.com blog
FQA
1.Git克隆代碼須要輸入密碼?Git提交代碼須要輸入帳號、密碼的。
tips: 1.Access denied.
2.Authentication failed.
3.Permission denied (publickey).
說明:問題根源是TortoiseGit採用的是本身的ssh.exe生成密鑰,與git的密鑰生成方式不一致,致使密鑰無效。
解決: 1.從新配置用戶名和郵箱,從新生成密鑰,把密鑰放入遠程倉庫中。
2.檢查TortoiseGit右鍵的TortoiseGit -> Settings -> Network設置,
將SSH client指向 ~Git\usr\bin\ssh.exe
2.Git採用 http 方式(而不是ssh)clone/pull/push代碼時,須要輸入用戶名密碼,解決每次輸入帳號密碼
解決:執行存儲密碼命令
$git config --global credential.helper store
命令會在項目本地生成一個文本,記錄帳號和密碼。使用上述的命令配置好以後,再操做一次git pull,而後它會提示輸入帳號和密碼,這一次以後就不須要再次輸入帳號和密碼了。
經常使用命令
$git clone url #克隆遠程倉庫
$git --version #查看git的版本信息
$git branch #查看本地全部分支
$git branch -a #查看全部的分支
$git branch -r #查看遠程全部分支
$git branch dev #建立分支
$git branch -D master develop #刪除本地庫develop
$git checkout dev #切換到本地dev分支
$git checkout -b dev #建立分支並切換分支
$git checkout --track origin/dev #切換到遠程dev分支
$git commit #提交
$git commit -am "test" #提交而且加註釋
$git commit -m [message] #提交暫存區到倉庫區
$git commit -v #提交時顯示全部diff信息
$git status #查看當前狀態
$git remote show #查看遠程庫
$git remote add origin url #添加遠程庫
$git remote show origin #顯示遠程庫origin裏的資源
$git pull #本地與服務器端同步
$git push origin master #將文件給推到服務器上
$git push origin master:develop #將本地庫develop與服務器上的庫進行關聯
$git push origin master:my-dev #將本地庫與服務器上的庫進行關聯
$git merge origin/dev #將分支dev與當前分支進行合併
$git add read.txt #將文件加入git
$git rm read.txt #從git中刪除指定文件
更多命令參考:https://www.cnblogs.com/zengming/p/7733099.html
備註:
做者:Shengming Zeng
博客:http://www.cnblogs.com/zengming/
本文是原創,歡迎你們轉載;但轉載時必須註明文章來源,且在文章開頭明顯處給明連接。<歡迎有不一樣想法或看法的同窗一塊兒探討,共同進步>