2017-04-21 57 views
0

我有一個關於bitbucket.org的大項目,大約2GB。出於某種原因,git clone命令在兩者之間中斷。所以我決定下載由bitbucket提供的zip版本的源文件。如何將Git推送下載的文件到遠程?

現在我想要做的是,無論我對這些文件所做的更改,我想通過bitbucket將它們上傳到Git倉庫。

這裏是我只是想:

  1. 我提取的所有文件壓縮到一個文件夾「MyProject的」

  2. 然後,我在此文件夾中運行以下命令Git命令

git init

git add。

git的承諾-m「測試提交」

所以這一步初始化一個本地的Git倉庫對我來說這些下載的文件。

  • 然後我運行下面的命令來建立遠程倉庫
  • GIT中添加原點https://[email protected]/myproject/myproject.git

  • 現在我下面鍵入命令推更改遠程倉庫
  • 混帳推起源主

    這一切都運行良好,但問題是在最後一步,它上傳整個項目到遠程回購到位上傳剛剛更新的文件。

    我該如何解決這個問題,以便它只能上傳被更改的文件?

    +0

    你能否在添加原點後首先嚐試使用git pull?也許你的文件夾結構不完全一樣,或者你在錯誤的目錄中。如果git pull會下載這個版本庫,那麼你有錯誤。 – Larce

    +0

    是的,我剛剛做了幾分鐘前的git pull,它仍在運行,這意味着它再次下載完整的源代碼?在這種情況下,我希望它不會中斷。 – aslamdoctor

    +0

    所以它只是替換文件?你可以嘗試添加-A而不是添加。? - 或者也許它會隨着拉力下降。 – Larce

    回答

    0

    直接的答案是你不僅可以上傳(推送)更改的文件,而且它不是git的工作方式。

    git commit僅計算文件的更改,然後將校驗用作SHA_1值。

    提交會記錄您在暫存區域中設置的快照。 任何你沒有登臺的東西仍然坐在那裏修改;你可以做 另一個提交將其添加到您的歷史記錄。每次執行 時間提交,你記錄你的項目的快照,你可以 恢復或比較以後

    所以未更改的文件有一個git回購的規模很小的影響。如果你想讓龐大的回購苗條,你應該在提交歷史記錄中找到一些胖提交,然後找到最大的文件並在所有提交歷史記錄中刪除它們。更多細節可以參考this chapter中的刪除對象部分。