Step 2---有關Github的幾個問題

來源:互聯網
上載者:User

標籤:style   http   color   使用   os   strong   檔案   資料   

1.取得項目的Git倉庫的方式

第一種是在現存的目錄下,通過匯入所有檔案來建立新的 Git 倉庫。

要對現有的某個項目開始用 Git 管理,只需到此項目所在的目錄,執行: $ git init

初始化後,在目前的目錄下會出現一個名為 .git 的目錄,所有 Git 需要的資料和資源都存放在這個目錄中。 第二種是從已有的 Git 倉庫複製出一個新的鏡像倉庫來。如果想對某個開源項目出一份力,可以先把該項目的 Git 倉庫複製一份出來,這就需要用到 git clone 命令。Git 收取的是項目曆史的所有資料(每一個檔案的每一個版本)。 2.記錄每次更新到倉庫接下來,對這些檔案作些修改,在完成了一個階段的目標之後,提交本次更新到倉庫。對於任何一個檔案,在 Git 內都只有三種狀態:已提交(committed),已修改(modified)和已暫存 (staged)。Git 管理項目時,檔案流轉的三個工作區域:Git 的工作目錄,暫存地區,以及本地倉庫。工作目錄下面的所有檔案都不外乎這兩種狀態:已跟蹤或未跟蹤。
  • 已跟蹤的檔案是指本來就被納入版本控制管理的檔案,在上次快照中有它們的記錄,工作一段時間後,它們的狀態可能是未更新,已修改或者已放入暫存區。
  • 其他檔案都屬於未追蹤檔案。它們既沒有上次更新時的快照,也不在當前的暫存地區。初次複製某個倉庫時,工作目錄中的所有檔案都屬於已追蹤檔案,且狀態為未修改。
編輯過某些檔案之後,Git 將這些檔案標為已修改。我們逐步把這些修改過的檔案放到暫存地區,直到最後一次性提交所有這些暫存起來的檔案,如此重複。附:3.可以對檔案進行的操作
  1. 檢查當前檔案狀態,可以用 git status 命令
  2. 跟蹤新檔案,使用命令 git add開始跟蹤一個檔案
  3. 暫存已修改檔案,要暫存這次修改,運行 git add 命令(這是個多功能命令:可以開始跟蹤新檔案,或者把已跟蹤的檔案放到暫存區,還能用於合并時把有衝突的檔案標記為已解決狀態等)
  4. 忽略某些檔案,有些檔案無需納入 Git 的管理,也不希望它們總出現在未追蹤檔案列表。可以建立一個名為 .gitignore 的檔案,列出要忽略的檔案模式。
  5. 查看已暫存和未暫存的更新, git status 的顯示比較簡單,僅僅是列出了修改過的檔案,如果要查看具體修改了什麼地方,可以用 git diff 命令。單單 git diff 不過是顯示還沒有暫存起來的改動,而不是這次工作和上次提交之間的差異。
  6. 提交更新,命令 git commit,在暫存準備好可以提交前,一定要確認還有什麼修改過的或建立的檔案還沒有 git add 過,否則提交的時候不會記錄這些還沒暫存起來的變化。所以,每次準備提交前,先用 git status 看下,是不是都已暫存起來了,然後再運行提交命令 git commit。
  7. 跳過使用暫存地區,儘管使用暫存地區的方式可以精心準備要提交的細節,但有時候顯繁瑣。Git 提供了一個跳過使用暫存地區的方式,在提交的時候,給 git commit 加上 -a 選項,Git 就會自動把所有已經跟蹤過的檔案暫存起來一併提交,從而跳過 git add 步驟。
  8. 移除某個檔案,要從 Git 中移除某個檔案,就必須要從已追蹤檔案清單中移除(確切地說,是從暫存地區移除),然後提交。可以用 git rm 命令完成此項工作,並連帶從工作目錄中刪除指定的檔案,這樣以後就不會出現在未追蹤檔案清單中了。
  9. 檔案移動,不像其他的 VCS 系統,Git 並不追蹤檔案移動操作。 mv 命令。要在 Git 中對檔案改名,可以這麼做:
    $ git mv file_from file_to

    其實,運行 git mv 就相當於運行了下面三條命令:

    $ mv README.txt README #move$ git rm README.txt    #remove$ git add README       #跟蹤新檔案

    如此分開操作,Git 也會意識到這是一次改名。

4.查看提交曆史

  • 在提交了若干更新之後,又或者複製了某個項目,想回顧下提交曆史,可以使用 git log 命令查看。
  • 預設不用任何參數的話,git log 會按提交時間列出所有的更新,最近的更新排在最上面。git log 有許多選項可以協助你搜尋感興趣的提交,接下來我們介紹些最常用的。git log -p 選項展開顯示每次提交的內容差異,用 -2 則僅顯示最近的兩次更新。
  • git log 還提供了許多摘要選項可以用,比如 --stat,僅顯示簡要的增改行數統計,等等。
  • 除了定製輸出格式的選項之外,git log 還有許多非常實用的限制輸出長度的選項。
  • 隨 Git 一同發布的 gitk 就是這樣一種工具,基本上相當於 git log 命令的可視化版本。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.