git一分鐘上手
流程:取** → 每次工作前更新**到最新版本 → 修改** → 提交**到伺服器
取**及修改全域性設定
設定使用者名稱與郵箱
git config --global user.name "my name"
git config --global user.email "[email protected]"
從已有的git庫中提取**
每次更改**的操作
更新本地**到最新版本(需要merge才能合到本地**中)
git fetch
合併更新後的**到本地
git merge
更新**方式的另一種方法(git pull是git fetch和git merge命令的乙個組合)
git pull
修改**後,檢視已修改的內容
git diff --cached
將新增加檔案加入到git中
git add file1 file2 file3
從git中刪除檔案
git rm file1
git rm -r dir1
提交修改
git commit -m 'this is memo'
如果想省掉提交之前的 git add 命令,可以直接用
git commit -a -m 'this is memo'
commit和commit -a的區別, commit -a相當於:
第一步:自動地add所有改動的**,使得所有的開發**都列於index file中
第二步:自動地刪除那些在index file中但不在工作樹中的檔案
第三步:執行commit命令來提交
提交所有修改到遠端伺服器,這樣,其它團隊成員才能更新到這些修改
git push
其它常用命令
顯示commit日誌
git log
不僅顯示commit日誌,而且同時顯示每次commit的**改變。
git log -p
回滾**:
git revert head
你也可以revert更早的commit,例如:
git revert head^
銷毀自己的修改
git reset --hard
檢視最新版本和上乙個版本的差異(乙個^表示向前推進乙個版本)
git diff head head^
將branchname分支合併到當前分支中。(如果合併發生衝突,需要自己解決衝突)
git merge branchname
解決衝突
當merge命令自身無法解決衝突的時候,它會將工作樹置於一種特殊的狀態,並且給使用者提供衝突資訊,以期使用者可以自己解決這些問題。當然在這個時候,未發生衝突的**已經被git merge登記在了index file裡了。如果你這個時候使用git diff,顯示出來的只是發生衝突的**資訊。
在發生衝突的時候,如果你使用git status命令,那麼會顯示出發生衝突的具體資訊。
在你解決了衝突之後,你可以使用如下步驟來提交:
第一步(如果需要增加檔案):
git add file1
第二步:
git commit
git恢復刪除了的檔案
git pull
從git伺服器取出,並且和本地修改merge, 類似於svn up,但是對刪除的檔案不管用,恢復刪除檔案用
git checkout -f
**:
Git一分鐘上手
流程 取 每次工作前更新 到最新版本 修改 提交 到伺服器 設定使用者名稱與郵箱 12 git config global user.name my name git config global user.email my email.com 從已有的git庫中提取 git clone git se...
Git一分鐘上手
流程 取 每次工作前更新 到最新版本 修改 提交 到伺服器 設定使用者名稱與郵箱 12 git config global user.name my name git config global user.email my email.com 從已有的git庫中提取 git clone git se...
git一分鐘教程
設定使用者名稱與郵箱 1 2git config global user.name my name git config global user.email my email.com 從已有的git庫中提取 1 更新本地 到最新版本 需要merge才能合到本地 中 1git fetch 合併更新後的...