git應用於android專案的基本知識。
常常將git,repo和gerrit三種工具配合起來使用,使android開發中的部分工作自動化。並適應敏捷專案管理的需要。
repo是google在git上開發的版本庫管理工具,是用python編寫的指令碼庫,用來統一管理多個git倉庫。
gerrit是適用於git專案的基於web的**review及許可權控制系統。它讓有許可權的使用者可以提交**,提交的**review和verify後會自動合併。
git本地庫分成工作目錄,索引和倉庫。假如說我們的產品是「修改」,我將其理解為,在乙個工作台上產生修改(工作目錄),給一批修改加上標籤(索引),最後組成乙個批次入庫(倉庫)。git的基本操作就是如何讓修改在這三部分間雙向傳遞。
給修改加上標籤:git add,可以新增檔案,資料夾,或者.(當前目錄所有內容)。相對應的,git reset head 可以去掉標籤,同樣可以新增檔案,資料夾或者所有內容。
注意,如果「修改」是刪除檔案,使用git rm 而不是git add。
這裡的head, 我將其理解成最近一次提交的批次,reset head並不會改變本地檔案。
另外,一次提交之前可以只add部分檔案,沒有加標籤的檔案不會入庫,也不會受影響。
讓一批加上標籤的修改入庫並統一成乙個批次:git commit。同樣,也可以反悔:git reset --soft head^,這樣上次入庫的檔案會回到加上標籤但未入庫的狀態,上次提交的資訊也沒有了。
有時候,我們多次提交但想讓這些修改在倉庫中顯示成同乙個批次,此時可以用git commit --amend。
在這裡,head、head^和head~2分別表示最近一次,倒數第二次和倒數第三次提交批次。--soft表示工作目錄和索引中的檔案完全不會改變,只會改變倉庫中的提交批次記錄。相反,如果用--hard,那麼本地檔案就會變成和倉庫中該批次檔案一樣。
用git checkout可以將倉庫中的檔案取出來,覆蓋工作台上的檔案。但是,已經加標籤(git add)的修改是不會被覆蓋的。
以上是我理解的git基本操作,雖然不準確,但確實對我使用git有幫助。這些都是在同乙個分支上操作。而git的精華是多分支並行構建乙個專案。下次有時間再來學習對git分支的基本操作。
python應用於網路 python應用於網路通訊
專案需要用到採用python實現維護測試工具,測試物件是linux裝置,需要在pc端採用python獲取linux裝置相關資訊 一 採用udp獲取普通資訊 udpserver socket af inet,sock dgram udpserver.bind ip,port data,client a...
bitmap應用於排序
這種方法只適合 資料不重複,已知資料範圍 的情況來自於 程式設計珠璣 所謂的bit map就是用乙個bit位來標記某個元素對應的value,而key即是該元素。由於採用了bit為單位來儲存資料,因此在 儲存空間方面,可以大大節省。如果說了這麼多還沒明白什麼是bit map,那麼我們來看乙個具體的例子...
MATLAB應用於濾波
1.什麼是影象的直方圖 2.直方圖均衡化 直方圖均衡化 histogram equalization 又稱直方圖平坦化,直方圖 拉伸是通過對比度拉伸對直方圖進行調整,從而 擴大 前景和背景灰度的差別,以達到增強 對比度的目的,這種方法可以利用線性或 非線性的方法來實現直方圖均衡化則通過使用累積函式對...