都是在git操作過程中碰見過的問題,發(fā)個總結(jié)帖,方便隨時查看總結(jié):
使用git在本地創(chuàng)建一個項目的過程:
$ makdir ~/hello-world //創(chuàng)建一個項目hello-world
$ cd ~/hello-world //打開這個項目
$ git init //初始化
$ touch README
$ git add README //更新README文件
$ git commit -m 'first commit' //提交更新处窥,并注釋信息“first commit”
$ git remote add origin git@github.com:xxxx/hello-world.git //連接遠程github項目
$ git push -u origin master //將本地項目更新到github項目上去
輸入$ git remote add origin git@github.com:github帳號名/git項目名.git
提示出錯:fatal: remote origin already exists.
解決辦法如下:
1犬钢、先輸入$ git remote rm origin
2涮总、再輸入$ git remote add origin 就不會報錯了院究!
3、如果輸入$ git remote rm origin 還是報錯的話嗡髓,error: Could not remove config section 'remote.origin'. 我們需要修改gitconfig文件的內(nèi)容
4通铲、找到你的github的安裝路徑,我的是C:\Users\ASUS\AppData\Local\GitHub\PortableGit_ca477551eeb4aea0e4ae9fcd3358bd96720bb5c8\etc
5器贩、找到一個名為gitconfig的文件,打開它把里面的[remote "origin"]那一行刪掉就好了朋截!
輸入$ git push origin master
提示出錯信息:error:failed to push som refs to .......
解決辦法如下:
1蛹稍、先輸入$ git pull origin master //先把遠程服務(wù)器github上面的文件pull下來
2、再輸入$ git push origin master
3部服、如果出現(xiàn)報錯 fatal: Couldn't find remote ref master或者fatal: 'origin' does not appear to be a git repository以及fatal: Could not read from remote repository.
4唆姐、則需要重新輸入$ git remote add origin
輸入$ ssh -T git@github.com
出現(xiàn)錯誤提示:Permission denied (publickey), 因為新生成的key不能加入ssh就會導(dǎo)致連接不上github。
解決辦法如下:
1廓八、先輸入$ ssh-agent奉芦,再輸入$ ssh-add ~/.ssh/id_key,這樣就可以了剧蹂。
2声功、如果還是不行的話,輸入ssh-add ~/.ssh/id_key 命令, 后出現(xiàn)報錯: Could not open a connection to your authentication agent.解決方法是key用Git Gui的ssh工具生成宠叼,這樣生成的時候key就直接保存在ssh中了先巴,不需要再ssh-add命令加入了,其它的user冒冬,token等配置都用命令行來做伸蚯。
3、最好檢查一下在你復(fù)制id_rsa.pub文件的內(nèi)容時有沒有產(chǎn)生多余的空格或空行简烤,有些編輯器會幫你添加這些的剂邮。
gitconfig配置文件
Git有一個工具被稱為git config,它允許你獲得和設(shè)置配置變量横侦;
這些變量可以控制Git的外觀和操作的各個方面挥萌。
這些變量可以被存儲在三個不同的位置:
1./etc/gitconfig 文件:包含了適用于系統(tǒng)所有用戶和所有庫的值。如果你傳遞參數(shù)選項’--system’ 給 git config丈咐,它將明確的讀和寫這個文件瑞眼。
2.~/.gitconfig 文件 :具體到你的用戶。你可以通過傳遞--global 選項使Git 讀或?qū)戇@個特定的文件棵逊。
3.位于git目錄的config文件 (也就是 .git/config) :無論你當前在用的庫是什么伤疙,特定指向該單一的庫。每個級別重寫前一個級別的值。因此徒像,在.git/config中的值覆蓋了在/etc/gitconfig中的同一個值黍特。
在Windows系統(tǒng)中,Git在$HOME目錄中查找.gitconfig文件(對大多數(shù)人來說锯蛀,位于C:\Documents and Settings$USER下)灭衷。它也會查找/etc/gitconfig,盡管它是相對于Msys 根目錄的旁涤。這可能是你在Windows中運行安裝程序時決定安裝Git的任何地方翔曲。
配置相關(guān)信息:
2.1 當你安裝Git后首先要做的事情是設(shè)置你的用戶名稱和e-mail地址。這是非常重要的劈愚,因為每次Git提交都會使用該信息瞳遍。它被永遠的嵌入到了你的提交中:
$ git config --global user.name "xxx"
$ git config --global user.email
2.2 你的編輯器(Your Editor)
現(xiàn)在,你的標識已經(jīng)設(shè)置菌羽,你可以配置你的缺省文本編輯器掠械,Git在需要你輸入一些消息時會使用該文本編輯器。缺省情況下注祖,Git使用你的系統(tǒng)的缺省編輯器猾蒂,這通常可能是vi 或者 vim是晨。如果你想使用一個不同的文本編輯器肚菠,例如Emacs,你可以做如下操作:
$ git config --global core.editor emacs
2.3 檢查你的設(shè)置(Checking Your Settings)
如果你想檢查你的設(shè)置罩缴,你可以使用 git config --list 命令來列出Git可以在該處找到的所有的設(shè)置:
$ git config --list
你也可以查看Git認為的一個特定的關(guān)鍵字目前的值案糙,使用如下命令 git config {key}: $ git config user.name
2.4 獲取幫助(Getting help)
如果當你在使用Git時需要幫助,有三種方法可以獲得任何git命令的手冊頁(manpage)幫助信息:
$ git help <verb>
$ git <verb> --help
$ man git-<verb>
例如靴庆,你可以運行如下命令獲取對config命令的手冊頁幫助:
$ git help config