1.通過複製建立
下載代碼:git clone + address
2.創建新的倉庫:
建立新的目錄: mkdir + 目錄名稱
初始化:git init
添加新創建或修改的文件到本地的緩存區: git add *(全部文件)A.java b.cpp (untracked的文件)
看緩存區中哪些文件被修改了:git diff --cached 如果不加--cached 會顯示當前你所有已做的但沒有加入到索引裏的修改。使用q退出 還可以比較分支 git diff +兩個分支名稱 加入--stat可以統計有哪些文件和行被改動
提交到本地代碼庫:git commit -m "push my code" 這裏使用-m來添加本次修改的註釋,完成爲新的版本 使用-a可以將所有沒有加到緩存區的修改一併提交,但不會添加新建的文件
本地倉庫關聯到遠端服務器 : git remote add + origin 主機名 + 自己的遠程倉庫地址
將本地代碼庫同步到遠端代碼庫:git push (-f ) origin master
3.分支和合並
新建一個分支:git branch +名字
查看當前分支列表以及目前開發環境在哪個分支中(*標識):git branch
切換到其他分支:git checkout +分支名字
刪除分支:git branch -d +分支名稱(必須是已合併的) 使用-D強制刪除
先到要合併的分支再執行:git merge -m“註釋的內容”+ 要合併的分支名稱
回退,撤銷一個合併:git reset --hard HEAD^(HEAD最後一個節點)
git reset --hard HEAD~num
4.
檢查所在分支信息: git status
查看日誌:git log 使用--stat查看詳細的提交記錄 --pretty=oneline或short等設置樣式 還有日誌排序等
git remote -v(版本)
5.分佈式工作
如果我們想把修改合併到原來的倉庫,拉取服務器上的更新到本地。
git pull origin master 相當於先從遠程分支git fetch (抓取修改的內容)然後再git merge(合併進當前分支)。
先 commit 再 pull 再 push 的情況就是爲了應對多人合併開發的情況。
6.
使用git tag 創建一個標籤指定某個提交 git tag +commit名稱的前8位即可
git tag中使用-a, -s 或是 -u三個參數中任意一個,都會創建一個標籤對象。需要-m輸入標籤消息。
使用git tag 查看所有標籤。
設置簽名標籤 git config (--global) user.signingkey <gpg-key-id>
在創建標籤的時候使用-s 參數來創建“簽名的標籤”:git tag -s stable-1 1b2e1d63ff
如果沒有在配置文件中配GPG key,你可以用-u參數直接指定。git tag -u <gpg-key-id> stable-1 1b2e1d63ff