本文轉載自:https://blog.csdn.net/xiaogeldx/article/details/89223650git
@[toc]github
論文_改.doc、論文_改改.doc、論文_改改改.doc、論文_改改改改.doc、論文_改改改改再改.doc、
論文_改改改改再改TM不改了.docvim
方便版本控制服務器
git 迅速成爲最流行的分佈式版本控制系統(沒有之一)ssh
結構圖2
分佈式
可是在暫存區的版本一旦提交就再也沒有了(保存到倉庫區中)測試
sudo apt-get install git
網站
git --version
spa
cd ~/MyProjects/ #初始化,使其變成 git 的倉庫 git init #會建立一個 .git 隱藏文件
#全局配置我的信息 git config --global user.name 'xiaogeldx' git config --global user.email 'xxx@qq.com' #針對本項目的我的配置信息 git config user.name 'xiaogeldx' git config user.email 'xxx@qq.com' #配置信息出如今 .git/config 文件中
vim test01.py
git status #當前在工做區
#添加項目中全部文件 git add . #或者添加指定文件 git add test01.py
git commit -m '一些描述'
git log git reflog #git reflog 能夠查看全部分支的全部操做記錄(包括 commit 和 reset 的操做),包括已經被刪除的 commit 記錄,git log 不能查看已經刪除了的 commit 記錄
git reset --hard HEAD^
#經過每一個版本的版本號回退到指定版本 git reset --hard 版本號
經過版本號回到新建了test02.py
git checkout 文件名
#第一步:將暫存區代碼撤銷到工做區 git reset HEAD 文件名 #第二步:撤銷工做區代碼 git checkout 文件名
撤銷倉庫區的代碼就至關於回退版本操做
git diff HEAD -- test1.py
對比本地倉庫各版本代碼
git diff HEAD HEAD^ -- test1.py
#刪除文件 rm 文件名 #git撤銷修改 git checkout -- 文件名
#刪除文件 rm 文件名 #git肯定刪除文件,對比添加文件git add git rm 文件名 #刪除後記錄刪除操做版本 git commit -m '刪除描述'
git clone 遠程倉庫的ssh
git remote -v
git push
git pull 遠程倉庫的ssh
git remote add gitee 遠程倉庫的ssh
git push
,pull 從本地倉庫上傳到遠程倉庫用 git push 遠程倉庫名 分支的名
git push gitee master
就很差用
git push gitee +master
強制推送,此時會覆蓋掉本地倉庫沒有的文件