git實踐整理

以下是我在實際工作中用git的一些基本操作整理和碰到的一些問題

前提是我們在github上存在一個項目叫ctalk,把自己的ssh公鑰讓這個項目的管理員加到該項目的ssh列表裏,接下來就開始我們的操作了:


1 克隆項目

   git clone git://github.com/jias/ctalk.git

    那麼這個項目就到我們本地了


2 提交項目

   git commit -a -m "我重構了xx類"

   這個提交只是把更改提交到我們本地的git管理庫中,跟遠程的服務器沒一點關係,github根本不知到這一操作,這也體現了git的    特點,大家都是服務器,沒有客戶端和服務器的概念,這兒我們不要認爲放在本地上的ctalk只是一個小客戶端,我們也是服務器。

   -a 表示all,-m 表示message,這樣避免一個一個的去add


3 推送項目

   git  push

   我們本地的git雖然也是服務器,但大的項目都是多個人來開發的,最後大家需要把自己的本地的服務器代碼push到某一指定的      服務器上進行合併,這個指定的服務器可以是項目組員中的任何人


4 更新項目

 git pull

這個命令是從其他服務騎上下在代碼到本地進行合併,這個pull和上面的push都是遠程的,在commit之後最好pull下再push  



以上是4個基本的流程、下面是一些幫助命令

1 git remote -v  查看遠程服務器的地址信息  如

   origin [email protected]:jias/ctalk.git (fetch)

   origin [email protected]:jias/ctalk.git (push)


2 git branch  查看有哪些分支,帶*表示當前所在分支

   *master

     letdb

3 git branch  -d  letdb  刪除letdb分支
4 git checkout letdb 從現在的分支切換到letdb分支
5 git merge letdb,把letdb分支合併到當前分支,比如當前是master,那麼letdb裏的代碼就和過來了,當然這個操作往往伴隨着   大量的衝突需要去排除

以上的命令多多少少會有些執行不了,如果你確定一定要這麼做,不妨加上一個  -f 參數 強制去做



FQA:

 當我在push代碼時,提示我github掛掉了等錯誤信息:原因是我們克隆的時候用的是  git clone git://github.com/jias/ctalk.git,這個地址在github上以下就看明白了,前面寫明瞭這是個git rad-only 他不走ssh協議,只能pull不能push,如果你要push,當初克隆的時候就要用這種格式的地址 [email protected]:jias/ctalk.git,他前面會自動加上ssh協議。當然你也可以不用重新clone,只需要重新指定下remote的地址 如下


git remote rm origin

git remote add origin  [email protected]:jias/ctalk.git

然後看下git remote -v看下地址格式已經正確了

也可以如下方式

git remote set-url --push origin [email protected]:jias/ctalk.git

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章