Android市場最常用版本控制工具Git總結

2021-09-01 08:19:26 字數 3768 閱讀 4524

git是乙個開源的分布式版本控制系統,可以有效、高速的處理從很小到非常大的專案版本管理。 git 是 linus torvalds 為了幫助管理 linux 核心開發而開發的乙個開放原始碼的版本控制軟體。

系統特點:

1.分布式系統(**管理很方便)

2.開源專案開發

3.mac,linux系統上開發推薦使用

4.轉殖擁有乙個將近一萬個提交(commit)五個分支每個分支大約有1500檔案,用時1分鐘

靈活性:

1.可以單機操作,git伺服器故障也可以在本地git倉庫工作

2.出了push和pull(或fetch)操作,其他都可以在本第操作

3.根據自己開發任務任意在本地建立分支

4.日誌都是在本地檢視,效率較高

安全性:

安全性較高每個開發者的本地都是一套完整板本庫,記錄著版本庫的所有資訊(gitfab)整合了備份功能

分支方面:

1.我們可以在git的任意乙個提交點(commit poit)開啟分支(gitcheckout.b newbranch hashid)

2.拉分支時間較快,因為拉分支只是建立檔案的指標和head

3.自己本地建立的分支不會影響其他人

4.比較適合多分支並行開發

5.git  checkout hash值(切回之前的版本,無需版本回退) 強大的cherry-pick

版本控制:

1.git只關心檔案資料的整體發生變化,更像是把檔案做快照,檔案沒有改變時,分支只想這個檔案的指標不會改變,檔案發生改變,指標指向新版本

2.40位長的雜湊值作為版本號,沒有先後之分

3.gitrebas操作可以更好地保持提交記錄整潔

工作流程:

1.開始工作前進行fetch操作  完成開發工作後push操作,有衝突解決衝突

2.git的提交過程不會被打斷,有衝突會標記衝突檔案

3.gitflow流程(經典)

內容管理:

對程式的源**管理方便,**庫占用的空間少。易於分支化管理

學習成本:

更在乎效率而不是易用性,成本較高(有很多獨有命令,rebase,遠端倉庫互動命令,等等)

許可權管理:

git沒有嚴格的許可權管理控制,只有賬號角色分化(在專案的home檔案下有且只有乙個git目錄)

管理平台:

git'lab(建議使用整合的功能較多,api開發),gernit  github等

git init
git clone [url]

例:git clone

// 新增乙個新的 remote 遠端倉庫

git remote add [remote-name] [url]

例:git remote add origin

origin:相當於該遠端倉庫的別名

// 列出所有 remote 的別名

git remote

// 列出所有 remote 的 url

git remote -v

// 刪除乙個 renote

git remote rm [name]

// 重新命名 remote

git remote rename [old-name] [new-name]

git rm file.txt         // 從版本庫中移除,刪除檔案

git rm file.txt -cached // 從版本庫中移除,不刪除原始檔案

git rm -r *** // 從版本庫中刪除指定資料夾

git add .               // 新增所有檔案

git add file.txt // 新增指定檔案

git commit -m "注釋"
// 撤銷最近的乙個提交.

git revert head

// 取消 commit + add

git reset --mixed

// 取消 commit

git reset --soft

// 取消 commit + add + local working

git reset --hard

git push [remote-name] [loca-branch]:[remote-branch]

例:git push origin master:master

git status
git fetch [remote-name]/[branch]
git merge [remote-name]/[branch]
pull = fetch + merge

git pull [remote-name] [branch]

例:git pull origin master

// 列出分支

git branch

// 建立乙個新的分支

git branch (branch-name)

// 刪除乙個分支

git branch -d (branch-nam)

// 刪除 remote 的分支

git push (remote-name) :(remote-branch)

// 切換到乙個分支

git checkout [branch-name]

// 建立並切換到該分支

git checkout -b [branch-name]

##與github建立ssh通訊,讓git操作免去輸入密碼的繁瑣。

ssh key must begin with 'ssh-ed25519', 'ssh-rsa', 'ssh-dss', 'ecdsa-sha2-nistp256', 'ecdsa-sha2-nistp384', or 'ecdsa-sha2-nistp521'. -- from github

根據以上文段我們可以知道github所支援的ssh密匙型別,這裡我們建立ssh-rsa密匙。

在command line 中輸入以下指令:``ssh-keygen -t rsa``去建立乙個ssh-rsa密匙。如果你並不需要為你的密匙建立密碼和修改名字,那麼就一路回車就ok,如果你需要,請您自行google翻譯,因為只是英文問題。

在本地倉庫根目錄建立 .gitignore 檔案。win7 下不能直接建立,可以建立 ".gitignore." 檔案,後面的標點自動被忽略;

/.idea          // 過濾指定資料夾

/fd/* // 忽略根目錄下的 /fd/ 目錄的全部內容;

*.iml // 過濾指定的所有檔案

!.gitignore // 不忽略該檔案

資料控使用Hadoop的三種最常用方式

hadoop使用的一般模式 hadoop最初的構想是為像yahoo google facebook等這樣的公司以非常低的成本來解決大量資料的儲存問題。現在,它正被越來越多地引入企業環境中處理新不同資料型別。機器生成的資料 感測器資料 社交資料 網路日誌等資料型別呈指數級增長,而且這些資料也常常 但不...

Android各版本市場占有率

天極網軟體頻道 2015 08 04 13 32 分享到 我要吐槽 天極軟體頻道訊息 今天google公布了乙份最新的android系統不同版本的市場占有率報告,報告稱整體來說安卓系統的碎片化問題依然非常嚴重。市場占有率排名第一的是android kitkat 奇巧巧克力 該系統在今年6月的占有率為...

Android常用應用市場和應用包名

工作中使用到,記錄分享給大家。華為應用商店 com.tencent.android.qq 小公尺應用商店 com.xiaomi.market oppo應用商店 com.oppo.market oppo應用商店 除錯oppo m80發現應用商店 com.heytap.market vivo應用商店 魅...