git的簡單實戰使用

2021-07-11 10:56:32 字數 1274 閱讀 9645

通常我們在對專案進行迭代開發的時候,要用到遠端倉庫進行**託管,從而達到多人同步開發的目的。對於android開發,我們現在使用androidstudio工具,裡面整合了git外掛程式,方便我們對**進行管理。

對於git的使用,基本的提交,檢出都是視覺化的。我們要說的是git的回滾操作。關於回滾,有兩種情況,第一種是我們提交**到了本地倉庫,**沒有提交到遠端分支;第二種是我們把**已經提交到了遠端分支。

首先是第一種情況,將**提交到本地倉庫後回滾:

執行的命令是

git reset [--soft | --mixed | --hard

分別介紹三種模式: --mixed會保留原始碼,只是將git commit和index回退到了某個版本

--soft也會保留原始碼,只將git commit資訊回退到某個版本,不涉及index的回退,如果還需提交,只需commit即可

--hard原始碼會回到到某個版本,即改變本地倉庫的**,使提交的**徹底回退。commit和index都回退到某個版本。使用此方法注意,這是在本地**沒有提交到遠端分支上可以,如果**已經提交到了遠端分支,此時執行此方法就會使得本地**跟遠端分支**不一致,全是衝突。

下面就來說一下第二種情況,**提交到遠端分支後進行回滾:

git revert "commit標識碼"

他的實質是將某個版本的**重新提交到遠端分支。

兩者明顯的區別用法:當我們只是要回滾本地倉庫中的**,使用reset,如果要回滾遠端分支的**,就要使用revert了。兩者的具體區別:

第一:上面我們說的如果你已經push到線上**庫, reset 刪除指定commit以後,你git push可能導致一大堆衝突.但是revert 並不會.

第二:如果在日後現有分支和歷史分支需要合併的時候,reset 恢復部分的**依然會出現在歷史分支裡.但是revert 方向提交的commit 並不會出現在歷史分支裡.

第三:reset 是在正常的commit歷史中,刪除了指定的commit,這時 head 是向後移動了,而 revert 是在正常的commit歷史中再commit一次,只不過是反向提交,他的 head 是一直向前的.

git刪除本地分支

git branch -d 150611_api6_2_dev

git刪除遠端分支

git remote -d master

git強制上傳到遠端分支(用於本地倉庫與遠端倉庫資料不一致的情況)

git push origin master --force

git的簡單使用

公司用svn來管理進行版本管理,使用不是很習慣。偶然在網路上看到git這個工具,覺得很不錯,正好可以用來對自己的 進行管理,以後就不需要再打包乙個乙個備份了。平台是 centos5 git version git version 1.7.8.git 初始化乙個git倉庫 git init 提交使用者...

git的簡單使用

git 新建乙個專案,cd 開啟這個資料夾第一層目錄就好了,git branch一下檢視分支 git branch develop建立乙個分支 git branch 檢視分支,現在你就有兩個了 git checkout develop切換到開發分支 現在你發現develop是綠色的,說明你在當前分支...

git 的簡單使用

1.git init 2.git config global user.email huazai com 3.git config global user.name huazai 4.git add 5.git commit m 說明這次有哪些改動 6.git log 7.git help 8.gi...