日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Git的纯命令操作,Install,Clone , Commit,Push,Pull,版本回退,撤销更新,分支的创建/切换/更新/提交/合并,代码冲突...

發布時間:2023/12/9 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Git的纯命令操作,Install,Clone , Commit,Push,Pull,版本回退,撤销更新,分支的创建/切换/更新/提交/合并,代码冲突... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Git的純命令操作,Install,Clone , Commit,Push,Pull,版本回退,撤銷更新,分支的創建/切換/更新/提交/合并,代碼沖突


這篇是接著上篇分布式版本庫——Windows下Git的環境部署以及在GitHub上開源自己的項目講的,上篇主要是說用GUI來圖形化界面操作,但是一般我們程序員也不會這么干,用命令又輕松又愉悅,所以,這里我就再開了一篇來專門說一下純命令是怎么去操作的,但是要注意哦,其實廖雪峰老師的網站就是非常贊的學習資源哦!

  • 廖雪峰老師:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

我們還是先從安裝開始吧,我上篇Ubuntu的配置博客也說了安裝,這里我就三個平臺一起講吧!

一.Install

安裝其實都是最簡單的方法了

  • Windows

    windows的安裝只要去下載一個協助工具就可以了,下載地址

    • https://git-for-windows.github.io/

安裝之后,我們在桌面右鍵有一個Git Bash Here

  • Ubuntu

    linux的安裝就是一條命令的事情了,我的這篇博客里也有講Android源碼淺析(二)——Ubuntu Root,Git,VMware Tools,安裝輸入法,主題美化,Dock,安裝JDK和配置環境


在終端輸入 sudo apt-get install git

如果你是#的root權限的話,可以不用加sudo

  • X OS

    mac的系統安裝雖說也是一條命令,但是他需要借助輔助的工具,當然,你也可以直接安裝XCode,它就集成了Git,不過需要配置一番,我們作為android開發人員,這個xcode其實看個人興趣吧,我們用另一種方式安裝

  • http://brew.sh/

只要下載安裝Homebrew,mac的終端就可以搜索安裝軟件了

輸入

sudo brew install git

等待安裝成功,檢查是否安裝成功的方式也很簡單,只要輸入

git version

查看他的版本就可以了

二.Clone

Clone就是從github上下載項目,我們在Github上新建一個項目,叫做GitTest吧!如果這一步不會操作的話,請移步:分布式版本庫——Windows下Git的環境部署以及在GitHub上開源自己的項目

我們把這個鏈接給記住了

https://github.com/LiuGuiLinAndroid/GitTest.git

這里,我先在D盤新建一個git的文件夾,然后進入這個目錄,直接右鍵打開Git Bash,然后輸入

git clone https://github.com/LiuGuiLinAndroid/GitTest.git

就可以下載下來代碼了

我們進入這個文件夾里面可以看到他只有一個文件README.md,我們輸入

vim README.md

去訪問他

這里vim是一個編輯的命令,我們推出這個vim環境只要輸入

q!

就可以了

三.Commit

提交代碼,我們先介紹一下Git的工作模式,其實吧,Git這么出名也是跟他的模式有關,而我們的章節,也是跟著他的模式走的

// add->commit->push

先是add,也就是把你要提交的代碼先提交到緩存區,然后commit提交到本地的倉庫,最后再push推送到遠程倉庫,也就是github上,這里,我們先對剛才那個README.md文件進行修改吧,我們編輯一下,加上一點文字

我們保存之后,剛才的綠色文件就變成了感嘆號,說明已經有修改了,這點和SVN一樣,我們回到命令行,這里,我們有一個很方便的命令

git status

來查看當前的狀態

這里就提示你這個文件已經是紅色的,改動了,需要提交嗎?

所以,我們就輸入

git add README.md

也就是添加到緩存區

他什么都沒提示說明add成功了,這個時候我們再次查看一下狀態,你就會發現

狀態是綠色的了,Ok,這個時候我們就需要commit了,輸入

git commit README.md

然后他會顯示這樣一個信息,這里是要你寫一些說明,我就寫了first commit

這里輸入

x

保存退出

然后我們再次查看一下狀態

果不其然,這里顯示你有一個commit,需要push,也就是推送

四.Push

既然他友好的提示我們可以push,那我們就直接推送吧,只要輸入

git push

即可,然后他會提示你輸入賬號和密碼

我們輸完之后,稍微等待一會兒,他們也自然會done的

到這里,我們的git的push就OK了,我們去github上看一下就明白了

五.Pull

這個就很好理解了,開原作者對自己的項目進行了一次修改,有新的東西了,我們就去更新一下, 也就去把代碼拉下來,這樣,我們在github上修改一下

現在的樣子就是這樣的了

這個很明顯和我本地的不一樣,所以我們就需要去pusll,輸入

git pull

好的,下拉成功

我們可以用vim命令去查看一下

可以看到,代碼也是拉了下來

六.版本回退

寫代碼寫著寫著發現自己入坑了,怎么辦,而且代碼還提交了,在隊友還沒有pull之前,趕緊版本回退,那該怎么做呢?我們可以這樣,首先,我們輸入

git log

來查看我們提交代碼的記錄

這里我們可以看到,我們第一次是系統初始化的,第二次也就是我們認為的提交,第三次,也就是我們pull的時候在github上提交的,我現在演示一下怎么退回到first commit

但是我們要注意,上圖中,log日志黃色的一長串ID,這就是我們要注意的東西,我們只有通過這個ID才能版本回退,所以,這里我先拷貝一下first commit的ID:

a0c401fcda58304938767820f35d6b4bcaad28db

好的,我們開始了,版本回退的命令是

git reset --hard a0c401fcda58304938767820f35d6b4bcaad28db

好的

他提示已經回退到first commit了,我們驗證一下,只要看一下README.md里面的信息就可以,我們用vim命令去看

這里果不其然是顯示第一次提交,說明我們已經成功的版本回退了,版本回退有風險,操作需謹慎哈!
如果你說要再回到原來的狀態,也是可以的,按照上面的方法再走一遍流程即可,不過要注意的是,這次想要獲取到的ID就不是輸入git log了,這里又出來一個新的命令了

git reflog

記錄的是所有的log,接下來,你就知道怎么去操作了
不過,這里也牽引出我們的撤銷操作出出來了

七.撤銷更新

前面已經說了這么多,這部分其實就是寫命令,所有就不實際演示了

//如果你寫代碼寫錯了之后想撤銷的話,也就是還原文件初始狀態 、git checkout --文件名 //如果你已經add了代碼到緩存區 git reset HEAD 文件名 //但是如果你已經commit了,就需要版本回退了 git reset --hard 版本號 //要是你推送到了遠程倉庫,比如github .....你就很痛苦了

八.分支的創建和切換

我們都知道,默認是有一個主分支master分支,但是我們有時候如果需要測試某些功能或者怎么樣的時候,需要創建一個分支,當覺得分支的代碼可以了就合并到主分支,這樣的好處也是保證主分支的一個干凈性和安全性,好的,我們具體來看一下怎么操作的:

  • 查看分支
git branch

  • 創建分支
git branch [分支名]
  • 切換分支
git checkout [分支名]

這樣就可以了,還有另一種比較方便的方法就是

  • 創建并且切換分支
git checkout -b [分支名]

這張圖,我們可以看到,我們先是查看了自己所在的分支,位于主分支,然后我創建了一個分支叫hello,接著我切換到hello這個分支,再次查看自己所在的分支,就是hello了,然后再切換回主分支,再用創建并切換的命令創建了android這個分支,然后查看分支,我們就位于android這個分支了

九.分支的更新和提交

分支的push和pull,其實和主分支的操作還是有些許區別的,就是命令

  • 分支push
git push origin 分支名

看,他可以提交,顯示要我們賬號密碼

這里,我們已經把android這個分支推送上去了,而hello這個分支沒有,所以我們輸入

git brnch -a

查看所以的分支

這里,白色的是本地分支,綠色的,是你所在的分支,紅色的,是遠程的分支


  • 分支pull

既然push要做處理,那pull肯定要咯,和push一樣 git pull origin 分支名

OK,這個是可以的

十.分支合并

這里,我們可以看到,我們所在的分支是android

我們對README.md進行修改
然后add commit

現在我們android分支已經修改了,但是主master分支病沒有,我們覺得android分支這段代碼可以用了,需要合并到主分支,那我們該怎么做呢?

我們這里可以看到,我們先是切換到了主分支,然后輸入

git merge 分支名

去合并代碼,現在,我們查看一下

好的,這樣,代碼就合并成功了

十一.代碼沖突

這個代碼沖突,在SVN中也是精彩會碰到,還是自己對版本控制這一塊的不熟練,一般出現沖突Git的話是兩種情況

  • 在你push推代碼的時候發生代碼沖突
  • 合并分支的時候發生代碼沖突

比如你在分支中寫的代碼,主分支也有類似的,就極有可能發生沖突,我們來測試一下,我們不演示了,我講個大概的思路,當出現沖突的時候,命令行會告訴我們哪個文件合并出錯,找到這個文件的時候

vim 文件名

你可以看到有個特殊的箭頭包裹著一段代碼,那就是兩個代碼塊不一樣的地方,你需要自己手動修復

然后,需要重新提交,但是再commit的時候

git commit -i -m '更新說明' 文件名

這樣提交后就可以直接push了

好了,小伙伴們,Git的使用是否已經學會了

我的群,通往Android的神奇之旅 :555974449,歡迎大家進來交流技術!

總結

以上是生活随笔為你收集整理的Git的纯命令操作,Install,Clone , Commit,Push,Pull,版本回退,撤销更新,分支的创建/切换/更新/提交/合并,代码冲突...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。