<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # 23. Git 內幕:直接處理 Git 對象 ## 目的 瀏覽對象存儲的結構。 > 學習如何使用 SHA1 哈希來查找倉庫中 的內容。 現在讓我們使用一些工具來直接探究 Git 對象。 ### 查找最新的提交 ``` $ git hist --max-count=1 ``` 這應當顯示倉庫中所做的最新提交。在你的系統中的 SHA1 哈希也許與我的不同,但應該看起來類似。 ``` $ git hist --max-count=1 * 96ee164 2013-04-13 | Added a Rakefile. (HEAD, master) [Jim Weirich] ``` ### 轉存最新的提交 使用上面所列提交的 SHA1 哈希。 ``` $ git cat-file -t <hash> $ git cat-file -p <hash> ``` 這兒是我的輸出: ``` git cat-file -t 96ee164 commit $ git cat-file -p 96ee164 tree 096b74c56bfc6b40e754fc0725b8c70b2038b91e parent 0f36766e05bc55d765ec8afe288430edc69fceea author Jim Weirich <jim (at) neo.com> 1365880844 -0400 committer Jim Weirich <jim (at) neo.com> 1365880844 -0400 Added a Rakefile. ``` 注意:如果你在別名實驗中定義了 `type` 和 `dump` 別名,那么 你可以輸入 `git type`和 `git dump`,而不是更長的 `cat-file` 命令(我從未記住過)。 這是 `master` 分支頭提交對象的轉存結果。它看起來很像先前介 紹的提交對象。 ### 查找 Tree 我們可以轉存提交中的目錄樹引用。這應當是我們項目中的文件的 說明。使用上面所列“tree”那行的 SHA1 哈希。 ``` $ git cat-file -p <treehash> ``` 這兒是我的目錄樹看起來的樣子…… ``` $ git cat-file -p 096b74c 100644 blob 28e0e9d6ea7e25f35ec64a43f569b550e8386f90 Rakefile 040000 tree e46f374f5b36c6f02fb3e9e922b79044f754d795 lib ``` 是的,我看到了 Rakefile 和 lib 目錄。 ### 轉存 lib 目錄 ``` $ git cat-file -p <libhash> ``` ``` $ git cat-file -p e46f374 100644 blob c45f26b6fdc7db6ba779fc4c385d9d24fc12cf72 hello.rb ``` 這是 hello.rb 文件。 ### 轉存 hello.rb 文件 ``` $ git cat-file -p <rbhash> ``` ``` $ git cat-file -p c45f26b # Default is World # Author: Jim Weirich (jim@somewhere.com) name = ARGV.first || "World" puts "Hello, #{name}!" ``` 你已經有它了。我們直接從 Git 倉庫轉存了提交對象、樹對象、 以及 blob 對象。blob、樹及提交就是全部了。 ### 瀏覽你自己的 Git 倉庫 手動瀏覽你自己的 Git 倉庫。看看是否能通過遵循最新提交的 SHA1 哈希引用來從第一個提交找出最初的 hello.rb 文件。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看