看日記學Git 之十四

2021-06-13 15:05:13 字數 788 閱讀 2533

我們從basic repository講起。

我們都會使用這些命令來完成最基本的工作:

git-init或git-clone來建立git倉庫

git-fsck來檢查倉庫的錯誤

git-gc用來完成一些瑣碎的工作,比如重組或刪減。

我們來專門研究下git-init命令。

git-init命令主要用於建立乙個空的git倉庫或者重新初始化乙個已存在的倉庫。

git-init命令會建立乙個.git隱藏目錄。在.git目錄下,會建立objects, refs/heads, refs/tags和模板檔案,與此同時,指向master分支的head檔案也會被建立。

如果在環境變數中定義了$git_dir變數,那麼git-init就不會在./.git目錄下建立這些檔案,而是在$git_dir所指定的目錄下建立。

環境變數$git_object_directory是用來指示物件儲存目錄的路徑的。如果設定了這個變數,則sha1目錄將被建立在**。否則,sha1目錄會預設建立在$git_dir/objects中。

如果你突發奇想地在乙個已經存在的倉庫(也就是目錄)中執行了git-init,也是沒有任何問題的,git-init(很識相地)不會把當前目錄下的git倉庫資訊覆蓋掉。其實,常常在需要載入新加模板時才需要「在乙個已存在的倉庫中執行git-init」。

有一點需要注意,那就是git-init和git-init-db是完全一樣的。git剛發布的時候是使用git-init-db的,但後來由於init所擔任的工作越來越多,所以db這個詞已經不能涵蓋init的工作範圍了,所以就去掉db,只剩下git-init了。

看動畫學演算法之 doublyLinkedList

今天我們來學習一下複雜一點的linkedlist doublylinkedlist。和linkedlist相比,doublylinkedlist中的節點除了next指向下乙個節點之外,還有乙個prev之前的乙個節點。所以被稱為doublylinkedlist。doublylinkedlist是乙個雙...

從統計學看NLP之概述(1)

在我看來nlp的所有思想都是基於統計學來的,不管是hmm,crf還是說目前火熱的神經網路,而目前入行nlp領域的同學可能大部分都沒有接觸過其中的統計學原理,所謂的神經網路沒可解釋性也導致大家沒興趣去研究為什麼nlp的神經網路要這麼去設計。說到機器翻譯,目前大部分都是採用seq2seq的模型,如果你是...

看動畫學演算法之 遞迴和遞迴樹

在之前我們介紹的很多資料結構和演算法都用到了遞迴,遞迴非常容易理解,用途也很廣泛,但是有乙個缺點就是需要儲存棧的狀態,如果遞迴次數太多會造成棧溢位的問題。本文將會講解常見的棧的應用,並使用遞迴樹形象的展示其遞迴的過程。遞迴樹是迭代過程的一種影象表述。遞迴樹往往被用於求解遞迴方程,它的求解表示比一般的...