0x01
首先,在自己本地git版本控制的那個文件夾里,所謂的版本庫是什么?
文件夾中的.git/,就是版本庫。
這個版本庫里面包含了一些什么呢?
- HEAD指針
- 暫存庫(stage)
-
master分支
.git/內的文件
這里就可以很科學的解釋,文件修改后提交到版本庫,為什么有add和commit兩個步驟了。
add: 把文件從你本地,加入到暫存庫中
commit: 把暫存庫中的所有文件,提交到master分支中
0x02
其實,通過記錄1中的幾個簡單命令,對于查看版本狀態已經完全夠用了。剩下的就是,管理修改,撤銷修改什么的。
場景1:當你改亂了工作區某個文件的內容,想直接丟棄工作區的修改時,用命令git checkout -- file。
場景2:當你不但改亂了工作區某個文件的內容,還添加到了暫存區時,想丟棄修改,分兩步,第一步用命令git reset HEAD file,就回到了場景1,第二步按場景1操作。
想要記錄的其實是刪除文件。
畢竟增刪改查,it四大件對吧哈哈哈。
刪除,一般在系統里面,就是rm命令了。
- 在本地的工作區,通過rm命令刪除文件
- 確定要刪除這個文件,使用 git rm filename命令,從版本庫刪除該文件
- rm和add一樣,做了什么事情,都得commit一下,匯報上級領導
git commit -m "delete a file"
0x03
ssh配置
- 先在本機的主目錄下面找找看有沒有.ssh/這個文件夾;
- 如果有,查看這個文件夾中是否有id_rsa和id_rsa.pub這兩個文件
- 如果沒有的話,執行以下命令:
$ ssh-keygen -t rsa -C "youremail@email.com"
- 登陸你的Github,點擊右上角頭像,點擊進入settings-->SSH and GPG keys。
在ssh keys里新增一個key,將你的id_rsa.pub文件中內容拷貝過去
然后你在本機上執行
$ ssh -T git@github.com
如果你能看到你自己的用戶名,說明配置成功
ssh提交
- 在Github頁面上新建一個Repository,剛新建是一個空項目
- 在本地你準備提交到Github上的工作區執行命令:
$ git remote add origin git@github.com:yourusername/learngit.git
- 執行了2中的命令后,再將本地代碼文件推送到Github上:
$ git push -u origin master
首先,push顧名思義;origin是遠程庫的名字,不用改;master指的是分支,將文件是推送到master分支上的
現在你打開你的Github web頁面,看到這個新建的倉庫,跟你本地工作區內容就一致了!
ssh clone
簡單的說就是怎么把Github頁面上的項目搞到本地工作區來。
$ git clone git@github.com:yourusername/yourrepo.git
執行clone命令,本地工作區就會有一個跟你Github頁面上完全一樣的倉庫了