Git核心:http://code.google.com/p/msysgit/downloads/list?q=full+installer+official+git
TortoiseGit :http://code.google.com/p/tortoisegit/
首先,在服務器創建一個文件夾用於存放你要公開的版本庫。
然后進入這個文件夾,右鍵->Git create repository here,彈出的窗口中勾選Make it Bare!
之后將這個文件夾完全共享(共享都會吧?注意權限要讓使用這個文件夾的用戶為“完全控制”)。
在客戶機打開我的電腦,點“映射網絡驅動器”
之后找到服務器剛才共享的文件夾,驅動器自己選擇,我選擇了X:,勾上“登錄時重連接”。
完成后,打開X盤看一下,是不是能看到文件了?那就說明映射成功了!
然后到項目文件夾(假設已經創建好了本地的版本庫了),
點右鍵->TortoiseGit->Settings,
左邊找到Remote(這項是針對版本庫的,沒有這項,說明你沒有在當前文件夾創建版本庫,
那就先Git create repository here,這時就不要Make it Bare了,因為這是客戶機。),
在這個窗口中Remote項是名字,隨便起一個填上吧。
URL是更新路徑,這里填上剛才映射下來的盤符,比如x:,
第三項留空(私鑰路徑,如果你用SSH就需要填寫)。
commit 還是在本地,沒有到服務器
Push 提交到服務器
Pull 從服務器得到
Setting--Git--Remote:
Remote:test
Url:C:/Git (repository路徑) 網路上的:https://github.com/username/repositoryName.git
提交服務器:
local branch: master Remote branch: master
Remote URL: test
$ git config --global user.name "defnngj"//給自己起個用戶名
$ git config --global user.email "defnngj@gmail.com"//填寫自己的郵箱
git add .
git add test.txt
git commit -m "this is commit message"
git merage master 將master合並到當前分支
$ git remote add origin git@github.com:defnngj/hello-world.git //連接遠程github項目
$ git push -u origin master //將本地項目更新到github項目上去
轉自http://www.cnblogs.com/fnng/archive/2012/01/07/2315685.html
------------------------------------關於可能出現的錯誤----------------------------------
1.在執行
$ git remote addorigin git@github.com:defnngj/hello-world.git
錯誤提示:fatal: remote origin already exists.
解決辦法:
$ git remote rm origin
然后在執行:$ git remote add origin git@github.com:defnngj/hello-world.git 就不會報錯誤了
2. 在執行
$ git push origin master
錯誤提示:error:failed to push som refs to.......
解決辦法:
$ git pull origin master //先把遠程服務器github上面的文件拉先來,再push 上去。
如你現在新創建了一個項目,想把它提交到github上面?
假設你創建好了一個項目,並切換到項目的根目錄下面:
$ git status //查看當前項目下所有文的狀態,如果第一次,你會發現都紅顏色的,因為它還沒有交給git/github管理。
$ git add . //(.)點表示當前目錄下的所有內容,交給git管理,也就是提交到了git的本地倉庫。
Ps:git的強大之處就是有一個本地倉庫的概念,在沒有網絡的情況下可以先將更新的內容提交到本地倉庫。
$ git commit –m”new natter ” //對你更新或修改了哪些內容做一個描述。
$ git remote add origin git@github.com:defnngj/hibernate-demo.git
//如果你是第一次提交項目,這一句非常重要,這是你本地的當前的項目與遠程的哪個倉庫建立連接。
Ps: origin可以改為別人的名字,但是在你下一次push(提交)時,也要用你修改之后的名字。
$ git remote -v //查看你當前項目遠程連接的是哪個倉庫地址。
$ git push -u origin master //將本地的項目提交到遠程倉庫中。
------------------------------------------------------------
假如,你回到了家,想把公司提交的項目克隆到本地?
如果你是第一次想把github上面的項目克隆到本地或者要克隆別人的項目到地。
$ git clone git@github.com:defnngj/hibernate-demo.git //在git下面切換到想存放此項目的文件目錄下,運行這條命令就可以將項目克隆下來。
假如本地已經存在了這個項目,而倉庫中又有一新的更新,如何把更的合並到本地的項目中?
$ git fetch origin //取得遠程更新,這里可以看做是准備要取了
$ git merge origin/master //把更新的內容合並到本地分支/master
-------------------------------------------
項目中刪除了一些文件,如何提交?
假如遠程倉庫中已經存了aaa這個文件,我fetch了下來,並刪除了aaa這個文件,想再push上到遠程倉庫中,並使遠程倉庫中的項目被新的修改覆蓋(也是是遠程倉庫中的aaa也被刪除)
$ git status //可以看到我們刪除的哪些文件
$ git add . //刪除之后的文件提交git管理。
$ git rm src/com/hzh/hibernate/dao/aaa.java //移除我們刪除的那個文件,不然git不允許我們往遠程倉庫提交。
Ps: 如果你想刪除的是某個目錄(java包),這里想移除整個目錄的內容。
$ git rm src/com/hzh/hibernate/bbb/ -r // -r 會把bbb/目錄下的所有內容一次性移動。
------------------------------------------------------------------------
遠程創建了一個新倉庫,本地創建了一個新項目,如何使新的項目與倉庫對應起來?
其實,這個也很簡單,只是我當時對那些命令不太理解,所以比較模糊,不知如何對應。
$ git remote add origin git@github.com:defnngj/hibernate-demo.git
//還是這個命令,在你push項目之前加上這一句就OK了。
git@github.com:defnngj/hibernate-demo.git 就是你常見的新倉庫的地址啊。git切換到新項目下,在push之前,加上這一句,我們創建的新倉庫就與新項目建立了連接。