簡體   English   中英

Git 推送到私人倉庫

[英]Git pushing to a private repo

我一直在我的本地 web 應用程序上工作,我被要求將它推送到一個空的(只讀我的文件)專為這個項目創建的私人回購。 我是git的新手,我在這樣做時遇到了麻煩。

有人可以告訴我我做錯了什么嗎?

我首先使用命令行導航到本地應用程序的主文件夾並初始化 git。之后,我嘗試使用以下命令克隆遠程倉庫:

git clone git://github.com/somename/Web-App.git

但我得到錯誤:

克隆到“Web-App”...致命:遠程錯誤:未找到存儲庫。

我知道回購協議在那里..我真的需要先從那個遠程克隆或拉出,還是有辦法直接推送到那個回購協議。

同樣,我要做的就是將我在本地的文件推送到我有權訪問的特定存儲庫。

我真的很感激任何幫助。

假設“yourWebApp”是您擁有本地 Web 應用程序的文件夾。 將其更改為目錄

cd 'yourWebApp'

在文件夾中初始化 git

git init

現在將您的 github url 添加為遠程

git remote add origin git://github.com/somename/Web-App.git

這里的origin是你的 url 的簡稱

現在從 github repo 中提取 read me 文件

 git pull origin master

現在將您的 Web 應用程序推送到 github 存儲庫

git push origin master

這里假設您在master ,默認分支

此處需要拉取自述文件以將自述​​文件與本地工作合並。 如果你的github倉庫是空的,可以跳過pull直接push到你的github倉庫。

另一方面,如果您想使用clone,則無需初始化,因為clone 會自動在目錄中設置git。 clone還設置您的遠程 git url。 在這種情況下,您的工作流程應該是

 clone -> push

我面臨同樣的問題。 我能夠通過從 Windows 中刪除舊憑據來解決這個問題。

  1. 從開始菜單打開控制面板
  2. 轉到用戶帳戶 -> 憑據管理器 -> 管理 Windows 憑據
  3. 刪除與 Git 或 GitHub 相關的任何憑據

一旦我這樣做了,它又開始工作了。

要推送到私有存儲庫,您可能希望對其進行分叉,將更改推送到您的副本(將保持私有),然后創建拉取請求。 當我嘗試直接推送到私有存儲庫時,我收到了令人費解的“遠程:未找到存儲庫。致命”消息,盡管我可以正常拉取。

我忘記把https放在我的 URL 之前:

git remote -v # URL doesn't have https
git remote remove origin # remove old URL
git remote add origin https://github.com/user-name/project-name.git # add new URL w/ https
git push -u origin main # try again

如果你不刪除舊的 URL,你會得到error: remote origin already exists.

git clone 為此目的有點矯枉過正。

git 提供的用於處理其他服務器的機制被恰當地稱為遠程。 這通常在您克隆時自動設置,解釋為什么這是您的本能。

文檔可以在這里找到:

http://git-scm.com/book/en/Git-Basics-Working-with-Remotes

一些總結命令:

git remote add [remote-name] [branch-name]

git fetch [remote-name]

git push [remote-name] [branch-name]

此外,您可能會考慮設置跟蹤分支,這將消除每次鍵入命令時限定遠程名稱的需要。 該用例的文檔在這里。

http://git-scm.com/book/en/Git-Branching-Remote-Branches

通常,如果你克隆一個倉庫,git 會執行git checkout -b master [remotename]/master

不過,您的跟蹤分支不必是主分支。

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM