2016-11-13 135 views
0

好吧,即時通訊新的Git,我有我自己無法解決的isue,即使在幾個小時後在這裏和那裏閱讀有類似問題的主題。 我會盡力來形容它的細節:Git - 推送到遠程存儲庫失敗

在rep_1有5個文件夾

我的GitHub庫的名稱是rep_1(1,2,...,5),並且有在的index.html每。我做了新的文件夾'工作',我git clone <url>我分叉回購。在文件夾1/index.html中,我使用了git initgit add .git commit -m進行了一些更改。

然後我用git remote add 1 https://github.com/username/rep1之後,

git push 1

和我:

致命:當前分支主不具有上游分支。要將當前 分支和設置遠程上游,使用混帳推--set上游1個主

我用太多,但它並沒有幫助。這段時間:

fatal:當前分支主機沒有上游分支。推當前 分支和設置遠程上游,使用 GIT中推--set上游工作主

也dind't工作。

庫沒有發現

我試過也git push -u rep_1,得到了相同的錯誤。我不知道我該怎麼做。

+0

也許1對於存儲庫引用並不是一個好名字?另外,你似乎在混合東西。 1是文件夾,回購參考還是分支?你需要'git remote add myRepo ...; git推myRepo主'。 –

+1

您是否嘗試刪除.git文件夾並重新開始?也請確保切換到正確的分支與git結帳branch_name – ytpillai

+0

我認爲你的步驟是非常錯誤的,並混淆了Ondra建議。你能說出你的實際需求是什麼嗎?你想在你的問題中發生什麼,我們可以建議需要遵循的步驟。 –

回答

0

在rep_1中有5個文件夾(1,2,...,5),每個文件夾都有index.html。我做了新的文件夾'工作',我git克隆我分叉的回購。在文件夾1/index.html中,我使用了git init和git add。和git commit -m進行一些更改。

這裏您是說您已經克隆了回購。後來你正在用git init初始化一個新的倉庫。所以,當你這樣做的時候,這個倉庫與你所克隆的倉庫完全不同。因此,您將無法推送到現有存儲庫(我假設您添加的遠程存儲庫是從您克隆的存儲庫中。)

說完如果您能說出您的要求是什麼,可以建議需要遵循的步驟。

0

基本上,git會搜索存儲庫信息(通常是.git)從當前文件夾到上層文件夾,直到找到.git。

對於您的問題,將使用您在文件夾1中創建的本地存儲庫。所以你不能通過這個本地信息推送到遠程。

不建議在其他存儲庫的工作目錄中創建新的存儲庫。

0

您無法在子文件夾中克隆相同的回購。爲什麼你不能如下推原因:

  1. 你克隆你的文件夾/work rep_1,所以在你本地的回購/work/rep_1
  2. 在文件夾/work/rep_1/1,您使用git init創建新的本地回購和在它做了一些改變
  3. 然後你添加遠程repo rep_1,並想推入文件夾/work/rep_1/1中的東西。但請記住,/work/rep_1/1是您在第1步中本地回購的子文件夾,您還有文件夾/ 2,/ 3,/ 4,/ 5。
  4. 有一個有趣的事情是,如果你使用git pull --allow-unrelated-histories,然後去目錄/work/rep_1使用git status,你會發現你在/work/rep_1/1改變了這一切在這裏展示
  5. 所以你使用git push 1,它真的會檢查/work/rep_1狀態和HEAD的SHA-1與遠程
  6. 比較。如果您需要更改推,你可以在/work/rep_1做到這一點直接
0

有許多sugestions但不適試圖解釋什麼,我必須做的。 我的克隆文件夾rep_1包含.git,所以當我使用git log時,已經有一個包含許多條目的存儲庫。我必須對文件夾1-5中的index.html文件進行更改。每個變更都必須提交。然後,我必須將其推送到遠程存儲庫,並完成所有更改。

我的問題:

  1. 是否可以在一個已經存在只有一個倉庫做了什麼?
  2. 我可以刪除.git文件並使用清除日誌創建新文件嗎?我不需要舊的改變。
  3. 是不可能在每個1-5文件夾中製作git存儲庫,然後將其推送到我的github?
  4. 我可以讓更改讓一次說兩個文件,並提交一個命令在gitbash?
+0

爲您的問題:1. \t不,如果你想分開控制5個文件夾,你需要把它們放在不同的文件夾; 2. \t不,即使刪除'.git'文件也不能刪除日誌。這是GIT功能,跟蹤所有歷史記錄已完成,因此日誌無法清理; 3。\t是的,您可以使用git init在不同的路徑中創建一個新的回購站並複製其中一個文件夾; 4. \t是的,在存儲庫中,無論您在子文件夾中更改了什麼,它都可以同時提交。 –

0

你只需要輸入存儲庫文件夾「rep_1」你克隆,然後運行

git add * 
git commit -m "x" 
git push 

推你在5個文件夾做出遠程存儲庫中的所有更改。

相關問題