目錄
什么是git?
安裝git
?創(chuàng)建版本庫
工作區(qū)和版本庫、
向版本庫中添加文件
?版本回退
遠程操作
什么是git?
linux是一個開源軟件,第一版本,第二版本不同怎么控制?

?SVM就相當于分布式中講的單點,但分布式版本控制系統(tǒng)沒有“中央服務(wù)器”,每個人的電腦上都是一個完整的版本庫,這樣,你工作的時候,就不需要聯(lián)網(wǎng)了,因為版本庫就在你自己的電腦上。既然每個人電腦上都有一個完整的版本庫,那多個人如何協(xié)作呢?比方說你在自己電腦上改了文件A,你的同事也在他的電腦上改了文件A,這時,你們倆之間只需把各自的修改推送給對方,就可以互相看到對方的修改了。他們的代碼,資源都相同,就是三個相同的副本。
安裝git
1.用git命令查看是否已安裝
git --vertion
2.安裝
sudo yum install git//centos
sudo apt-get intall git//ubuntu
? 3 進行配置,指定使用git的賬號和用戶名
git config --global user.name "Your name"
git config --global user.email "Your email“
?創(chuàng)建版本庫
版本庫又稱倉庫,倉庫中存放被git管理的文件,每個文件的修改、 刪除,git都能夠跟蹤,可以方便追蹤歷史。
創(chuàng)建倉庫方法:
?創(chuàng)建成功,多了.git目錄,用來跟蹤管理版本庫的,不能刪除!
工作區(qū)和版本庫、

第一步是用git add把文件添加進去,實際上就是把文件修改添加到暫存區(qū);
第二步是用git commit提交更改,實際上就是把暫存區(qū)的所有內(nèi)容提交到當前分支。
向版本庫中添加文件
git add filename
git add --all .//添加所有文件
git commit

?版本回退
git status
git diff
查看歷史提交信息
git log
git reset
git reset –-hard HEAD^ # 退回后新的不存在了,若git log還存在可用版本號回退git reset –-hard 版本號(來自git log)git reflog # 記錄每一次更改,可找到最新版本

?
?再去看zn.txt里面的內(nèi)容的時候,就是上次的了,因為回退了
?
reflog 記錄每一次修改
撤銷修改(刪除)1. git checkout -- filename ,回到最近一次git commit或git add時的狀態(tài)。若未放到暫存區(qū),回到和版本庫一樣的狀態(tài)若放到暫存區(qū),則回到添加到暫存區(qū)后的狀態(tài)2. git reset HEAD filename:撤銷暫存區(qū)中的內(nèi)容(git add)3. git rm filename:刪除提交到版本庫中的文件 (錯刪,則git checkout -- filename從版本庫恢復)
遠程操作
步驟:登錄github(gitee),創(chuàng)建和項目同名repository例如:git remote add origin git@github.com:Coder-Peng/repo_git.gitgit push -u origin master #第一次提交本地庫
建立倉庫
?
我已經(jīng)用學校分的虛擬機上安裝了git
設(shè)置用戶名和郵箱(這里我不明白是不是必須和gitee上的用戶名和郵箱對應(yīng),因為gitee給的教程是,會問老師)
?
?創(chuàng)建倉庫
?創(chuàng)建文件-》添加到暫存區(qū)(沒有輸出)-》提交master分支
?
?
?這是我文件中的內(nèi)容,我開始回退
?因為頭指針head一直指向最新的,所以一直回退,我回退到第一次提交的時候了
查看歷史修改信息
?‘我修改了文件內(nèi)容,但是我不提交到暫存區(qū)更沒有提交到分支
撤銷(刪除)?
以此來檢驗checkout 回到哪里了?
沒有放到暫存區(qū),回到了和版本庫一樣的狀態(tài)
如果放到了暫存區(qū),也就是使用了add命令了,則回到添加到暫存區(qū)之后的狀態(tài)
讓我們來試試吧
?
?以上是我沒有提交到暫存區(qū)的情況,它回退到了和版本庫一樣的狀態(tài)(從版本庫拿到最新的版本),也就是我修改的內(nèi)容“加油復習考試”這句話刪除了,不見了
?只要我使用了add命令提交到了暫存區(qū),會不會退一點影響都沒有,因為他是回退到了添加到暫存區(qū)一樣的狀態(tài)
問老師:不明白
?遠程操作,向gitee上推代碼 ?
git remote add origin?git@gitee.com:star-insomnia-zhang-na/myproject.git git push -u origin master 第一次提交本地庫要選中SSH
?你想直接往gitee上推代碼,是推不了的,提示的錯誤也說你沒有公鑰,
服務(wù)器并不能讓任何人向我們的git服務(wù)器上推送代碼,只能讓有憑證的人向服務(wù)器推送,git本地和gitee服務(wù)器之間是通過ssh對稱秘鑰來完成兩者的身份確認的
ssh-keygen -t rsa -C "2091691459@qq.com"通過這個來獲取公鑰私鑰
?
?點擊怎樣生成公鑰,gitee給了詳細介紹
?
?查看公鑰私鑰
?
這樣復制上去公鑰是一段一段的? 不行? 輸入的密碼是正確的但一直顯示指紋不對?
解決方法 ----------不太理解這樣為啥就行了,
?在終端輸入
ssh -T git@gitee.com、首次使用需要確認并添加主機到本機SSH可信列表。若返回?
Hi XXX! You've successfully authenticated, but Gitee.com does not provide shell access.
?內(nèi)容,則證明添加成功。
成功了?
?不要按照gitee上的幫住手冊整部署公鑰,這樣不能往上推代碼,試了好久,耽誤了好長時間,把部署公鑰刪除之后添加公鑰
?在這里
?
文章來源:http://www.zghlxwxcb.cn/news/detail-685529.html
我用了一上午的時間終于完成了向gitee上推程序,你也試試吧,有很多細節(jié)需要注意,一定要耐心解決呀文章來源地址http://www.zghlxwxcb.cn/news/detail-685529.html
到了這里,關(guān)于Linux 分布式版本控制系統(tǒng)git,手把手教向gitee上推代碼的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!