window上使用GIT的我的經驗(入門級)

0.安裝linux

使用google上的msysgitgit

http://code.google.com/p/msysgit/downloads/listgithub

儘可能用最新版的吧vim

1.KEYwindows

關於 key,.ssh裏面的key是與服務器通訊用的,其餘什麼用,也不必定要用email,其實隨便用什麼均可以。api

github.com上那個服務器

ssh-keygen -t rsa -C "email"ssh

有誤導的成分,其實引號裏面的不必定要email隨便均可以,只要把本地.ssh/id_rsa.pub裏面的東西複製到github裏面的public ssh key就能夠了。編輯器

2.大小區分的問題ui

開始在github上建了個項目,在本地使用了$ git remote add git@github.com:{user}/{project}.git,結果由於輸入是大小寫跟服務器上不一致,致使找不到項目,鬱悶啦,最鬱悶的是,在windows上從新按正確的大小寫add一次,提示已經存在,最後的解決辦法是先刪除,而後在添加

git remote rm origin 3.Bash粘貼

默認狀況下Git Bash竟然不支持粘貼,在我輸入api key的時候最鬱悶,後來解決方法是在Bash窗口上點右鍵 選擇Properties把QuiteEditMode,InsertMode複選框勾上。

4.使用GitHub.com服務器

開始的時候覺得設置加密就可了,原來還有一個apiKey和用戶輸入

也就是在config裏面配置github.com裏的用戶名和郵箱

$ git config --global github.user "youruser"

$ git config --global github.token yourtoken(在GitHub上的account settings>account admin >>api token那串字符)

配置好了,能夠經過

$git config --list查看。

5.關於VIM窗口

開始用git commit 提交的時候是用 -m 「message」的

後來直接用git commit 回車後彈出一個窗口,後來才知道是linux下的文本編輯器

鬱悶的是半天退出不出來,baidu,google一番,

進入以後是VIM的普通模式,按 i 鍵,進入INSERT模式,這是能夠輸入message了。

輸入完成以後,按ESC鍵進入命令模式 ,輸入冒號(在窗口下面顯示),而後輸入x,回車就OK了。

其實能夠用記事本代替vim,

輸入以下配置:

git config --global core.editor C:/windows/notepad.exe

6.清楚Bash裏面的歷史記錄

其實就是Linux清楚歷史命令,直接輸入$ history -c

7.關於Tag

打tag很簡單,所謂「會者不難難者不會」,直接使用git tag -a tagname -m「mesage」

打完tag要顯示的push,使用命令git push origin tangname,這樣別人才能看到

切換到tag下面用git checkout tagname,

刪除tag:git tag -d tagname

遠程刪除:git push origin :refs/tags/tagname

8.關於Branch

git branch 不帶參數:列出本地已經存在的分支,而且在當前分支的前面加「*」號標記

git branch -r 列出遠程分支

git branch -a 列出本地和遠程分支

git branch BranchName 建立新的 本地 Branch

git branch -d Branchname 刪除branch

git branch -d -r Branchname 刪除遠程branch(例git branch -d -r origin/aa)

git push <remote repository> <local branch> 把本地branch 推送到遠程服務器

error: dst refspec notmaster matches more than one. That's because I had a tag with the same name as the branch. This was a poor choice on my behalf and caused the ambiguity. So in that case:

$ git push origin :refs/heads/notmaster http://stackoverflow.com/questions/2003505/how-do-i-delete-a-git-branch-both-locally-and-in-github

9.關於GITK

推薦一篇好的文章

http://lostechies.com/joshuaflanagan/2010/09/03/use-gitk-to-understand-git/

10.返回命令窗口

之前一直很鬱悶,輸入了git log以後不知道怎麼返回到命令窗口,就直接關閉整個窗口,

今天用git show tagname也出現了這個問題,通過摸索發現其實很簡單

輸入q,其餘鍵盤會繼續顯示剩餘log(若是有的話)

也就是Linux的退出命令

11.文件還原

用了一段時間發現文件還原很重要,以前不知道怎麼弄,裝了TortoiseGit用上面的Revert菜單。

其實用GIT命令是這樣滴:

a,若是文件修改了可是沒有提交(commit),直接用git checkout -f

b,若是修改了並提交了,

能夠用 git revert HEAD

能夠用git reset --hard HEAD

相關文章
相關標籤/搜索