Git常用命令


採用Git的開發流程
按原來的經驗,自己總結的。
有什麼不對的地方,請大家指教。謝謝~~~

導入新項目(server IP: 192.168.128.64)
cd test
git init
git add . (爲test目錄下所有文件存入暫存區)
git commit –m "***"  (將暫存區中的所有內容永久性的放入本地數據倉庫中)
git log  -1      (查看最後一次交付的哈希值)
git tag V0.1_090629 哈希值   (創建標籤並指向一個具體的交付)

Dev1:
git clone ssh://192.168.128.64/pub/scm/test.git dev1      (clone 服務器上的數據庫至本地dev1目錄下)
git branch test_dev1      (創建工作分支)
git checkout test_dev1       (進入該工作分支)
      modify,add,delete
git add .       (將該目錄下進行修改,添加,刪除操作後加入暫存庫)
git commit -m "add a.c file and modify test.c"       (提交至本地數據庫中)
git push ssh://192.168.128.64/pub/scm/test.git test_dev1:refs/heads/branch_dev1       (將本地test_dev1分支上修改的內容push至服務器上的branch_dev1分支上)

Dev2:
git clone ssh://192.168.128.64/pub/scm/test.git dev2
git branch test_dev2
git checkout test_dev2
      modify,add,delete
git add .
git commit -m "add a.c file and modify test.c"
git push ssh://192.168.128.64/pub/scm/test.git test_dev2:refs/heads/branch_dev2

SCM:
git clone ssh://192.168.128.64/pub/scm/test.git scm
git branch merge_int
git checkout merge_int
git pull ssh://192.168.128.64/pub/scm/test.git branch_dev1:merge_int       (將服務器branch_dev1分支上的內容下載且合併至本地端的merge_int分支上)
git pull ssh://192.168.128.64/pub/scm/test.git branch_dev2:merge_int
      conflict & resolved
git add .
git commit -m "add dev1 dev2"
git push ssh://192.168.128.64/pub/scm/test.git merge_int:refs/heads/dev_main       (將本地merge_int分支上的內容push至服務器該項目的dev_main分支上)
git tag –a –m "***" tag_name SHA-1     (爲指定的變更提交一個tag,參考建立倉庫時的操作)
git push origin tag_name     (將此tag推送至服務器)

Dev1: (開發人員在本地端做update的操作)
git checkout master     
git pull ssh://192.168.128.64/pub/scm/test.git dev_main      (將dev_main分支上的內容下載且與本地當前分支做merge操作)




Git的目錄結構
./git/config是當前倉庫的配置信息

./git/HEAD存放着當前分支(branch)的名字。

./git/refs/heads/存放了所有分支(branch)的最後一次提交的對象的引用。

./git/hooks裏存放了一堆的hook腳本,如果要啓用某個hook,則只需把對應名字後面的.sample給去掉即可


Git之點點滴滴
在應用Git過程中的一些點滴小東西
記錄下來,以備查看:

1.git config

   配置git的參數變量,它可以帶以下2個參數:
  --system,針對系統的所有用戶的,對應的配置文件在/etc/gitconfig
   --global,針對系統當前用戶的,對應的配置文件在~/.gitconfig
   不帶參數,針對當前git倉庫的,對應的配置文件在.git/config

   如果在個人pc上使用git,加上參數--global即可
  如果在公共服務器上使用git,則一定不要帶那2個參數

2.git push origin b3

   默認會把本地的b3分支提交到遠程的b3分支上,如果本地分支和遠程分支名不同,一定要這樣
  git push origin b3:b1

   也即把本地的b3分支提交到遠程的b1分支上

轉載請註明源自www.SCMLife.com,請保留版權. 本貼地址:http://bbs.scmlife.com/viewthread.php?tid=22571


git diff ORIG_HEAD  比較分支差異

git checkout -b helo master  建立分支 helo

git show-branch


git show-branch --more=6 master master~2 | head

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