Git 局域網簡單配置



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之前,加上這一句,我們創建的新倉庫就與新項目建立了連接。

 

 










免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM