git 操作

1.創建版本庫

git init命令把這個目錄變成Git可以管理的倉庫:

git add告訴Git,把文件添加到倉庫:

git commit告訴Git,把文件提交到倉庫:

簡單解釋一下git commit命令,-m后面輸入的是本次提交的說明,可以輸入任意內容,當然最好是有意義的,這樣你就能從歷史記錄里方便地找到改動記錄。

2.版本回退

git status告訴你有文件被修改過,用git diff可以查看修改內容。

git log命令顯示從最近到最遠的提交日志

$ git reset--hard3628164

HEAD指向的版本就是當前版本,因此,Git允許我們在版本的歷史之間穿梭,使用命令git reset --hard commit_id。

穿梭前,用git log可以查看提交歷史,以便確定要回退到哪個版本。

要重返未來,用git reflog查看命令歷史,以便確定要回到未來的哪個版本。

3.撤銷修改

場景1:當你改亂了工作區某個文件的內容,想直接丟棄工作區的修改時,用命令git checkout -- file。

場景2:當你不但改亂了工作區某個文件的內容,還添加到了暫存區時,想丟棄修改,分兩步,第一步用命令git reset HEAD file,就回到了場景1,第二步按場景1操作。

場景3:已經提交了不合適的修改到版本庫時,想要撤銷本次提交,參考版本回退一節,不過前提是沒有推送到遠程庫。

4,刪除文件

命令git rm用于刪除一個文件。如果一個文件已經被提交到版本庫,那么你永遠不用擔心誤刪,但是要小心,你只能恢復文件到最新版本,你會丟失最近一次提交后你修改的內容

5.遠程倉庫

要關聯一個遠程庫,使用命令git remote add origin git@server-name:path/repo-name.git;

關聯后,使用命令git push -u origin master第一次推送master分支的所有內容;

此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改;

分布式版本系統的最大好處之一是在本地工作完全不需要考慮遠程庫的存在,也就是有沒有聯網都可以正常工作,而SVN在沒有聯網的時候是拒絕干活的!當有網絡的時候,再把本地提交推送一下就完成了同步,真是太方便了!

要克隆一個倉庫,首先必須知道倉庫的地址,然后使用git clone命令克隆。

Git支持多種協議,包括https,但通過ssh支持的原生git協議速度最快。

6.分支管理

查看分支:git branch

創建分支:git branch

切換分支:git checkout

創建+切換分支:git checkout -b

合并某分支到當前分支:git merge

刪除分支:git branch -d

查看遠程庫信息,使用git remote -v;

本地新建的分支如果不推送到遠程,對其他人就是不可見的;

從本地推送分支,使用git push origin branch-name,如果推送失敗,先用git pull抓取遠程的新提交;

在本地創建和遠程分支對應的分支,使用git checkout -b branch-name origin/branch-name,本地和遠程分支的名稱最好一致;

建立本地分支和遠程分支的關聯,使用git branch --set-upstream branch-name origin/branch-name;

從遠程抓取分支,使用git pull,如果有沖突,要先處理沖突。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 1. 安裝 Github 查看是否安裝git: $ git config --global user.name "...
    Albert_Sun閱讀 13,721評論 9 163
  • 1日外 戰場 炮火忽停,壕溝彌漫著濃濃的煙塵。 藍軍戰壕士兵放下手里的槍抓緊修補工事。準備下一輪的阻擊行動 用紗布...
    我是小代同學閱讀 247評論 0 0
  • 昨天和張同學一起,看了“恐襲波士頓”。在廣安門電影院,也算是培訓的意外收獲吧,居然斜對面就有一家電影院,而...
    celiayizhang閱讀 269評論 0 0
  • 大半個月沒回來北京,天氣明顯暖和不少。能夠再度把自己裹進貼身毛衣,姜黃或者杏粉,而不必被南方的濕冷所打敗。 廣州的...
    NikiFung閱讀 221評論 0 0