git 這天你失利了

2021-10-25 22:22:28 字數 2313 閱讀 1283

git

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

git add readme.txt 把檔案新增到倉庫

git commit 告訴git,把檔案提交到倉庫

要隨時掌握工作區的狀態,使用git status命令。如果git status告訴你有檔案被修改過,用git diff可以檢視修改內容。

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

回退到上乙個版本add distributed,就可以使用git reset命令

git reset --hard 1094a hard 1094a為commit id

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

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

第一步是用git add把檔案新增進去,實際上就是把檔案修改新增到暫存區;第二步是用git commit提交更改,實際上就是把暫存區的所有內容提交到當前分支。

第一次修改 -> git add -> 第二次修改 -> git commit:git管理的是修改,當你用git add命令後,在工作區的第一次修改被放入暫存區,準備提交,但是,在工作區的第二次修改並沒有放入暫存區,所以,git commit只負責把暫存區的修改提交了,也就是第一次的修改被提交了,第二次的修改不會被提交。

命令git checkout – readme.txt意思就是,把readme.txt檔案在工作區的修改全部撤銷

場景1:當你改亂了工作區某個檔案的內容,想直接丟棄工作區的修改時,用命令git checkout – file。場景2:當你不但改亂了工作區某個檔案的內容,還新增到了暫存區時,想丟棄修改,分兩步,第一步用命令git reset head ,就回到了場景1,第二步按場景1操作。

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

git remote add origin [email protected]:gaofan/learngit.git 把本地倉庫的內容推送到github倉庫。

把本地庫的內容推送到遠端,用git push命令,實際上是把當前分支master推送到遠端。 git push origin master

要關聯乙個遠端庫,使用命令git remote add origin git@server-name:path/repo-name.git;關聯後,使用命令git push -u origin master第一次推送master分支的所有內容;此後,每次本地提交後,只要有必要,就可以使用命令git push origin master推送最新修改;

用命令git clone轉殖乙個本地庫

分支:你建立了乙個屬於你自己的分支,別人看不到,還繼續在原來的分支上正常工作,而你在自己的分支上幹活,想提交就提交,直到開發完畢後,再一次性合併到原來的分支上,

檢視分支:git branch 建立分支:git branch 切換分支:git checkout 或者git switch 建立+切換分支:git checkout -b 或者git switch -c 合併某分支到當前分支:git merge 刪除分支:git branch -d

合併分支時,加上–no-ff引數就可以用普通模式合併,合併後的歷史有分支,能看出來曾經做過合併,而fast forward合併就看不出來曾經做過合併。

修復bug時,我們會通過建立新的bug分支進行修復,然後合併,最後刪除;當手頭工作沒有完成時,先把工作現場git stash一下,然後去修復bug,修復後,再git stash pop,回到工作現場;在master分支上修復的bug,想要合併到當前dev分支,可以用git cherry-pick 命令,把bug提交的修改「複製」到當前分支,避免重複勞動。

開發乙個新feature,最好新建乙個分支;如果要丟棄乙個沒有被合併過的分支,可以通過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,如果有衝突,要先處理衝突

變基:rebase操作可以把本地未push的分叉提交歷史整理成直線;rebase的目的是使得我們在檢視歷史提交的變化時更容易,因為分叉的提交需要三方對比。

如果當年你高考失利了,你會選擇復讀嗎?

高考結束,高三學子們的壓抑終於可以釋放。雖然考試結束了,但是高考的影響卻愈發深厚。因為不到成績出來的那一刻,沒有人的心不是懸著的。隨著 高考要不要復讀 出現在微博熱搜榜,人們才發現學生對學歷愈發的重視!因為很多學生將高校和未來前程似錦劃上了等號。但是也有人反駁,學習成績不代表一切,360行行行出狀元...

對不起,審視了你

對不起,審視了你 審視自己 我,年24,2011年畢業於成都資訊工程學院,著有白話文 那年老子成信院畢業 少年的煩惱 高考尾班車 和 三年之期 生活中的我喜歡閒散自由,放蕩,偶爾隨意大方,偶爾認真專業,偶爾憂鬱忡忡。高興中的我喜歡分享,喜歡將其最大化。情感中的我喜歡默契,喜歡相互信任,喜歡潛移默化。...

你盡力了麼

轉貼自小四的一篇文章,每次讀來都有新的感受,感到了和高手的差距 值得收藏。內容 很多人問如何入門如何入門,我卻不知道要問的是入什麼門。很少把某些好文章耐心 從頭看完,我這次就深有體會。比如袁哥的sniffer原理,一直以為自己對sniffer原 理很清楚的,所以也就不曾仔細看過袁哥的這篇。後來有天晚...