我有一个远程Git存储库,它是一个包含一堆文件的文件夹。
我刚刚在计算机上创建了一个新文件,而没有提取现有的Git存储库或任何东西。我可以推送这个新文件,使其最终保存在远程存储库中的文件夹中吗?
还是我必须先pull
,添加文件,然后再push
。
(该文件无需与文件夹中的任何其他文件一起使用)
答案 0 :(得分:2)
TLDR;没有
||说明:要与远程git repo通信,您需要将其与本地计算机上的文件夹(git init
)链接。之后,添加远程回购链接(git add remote origin <URL>
)并拉出(git pull origin master
)。现在,一旦您的本地文件夹与远程仓库同步,您就可以自由添加任何新文件(git add <file>
,git commit -m <message>
和git push origin master
)。这将是最简单的方法。请记住,git将所有信息存储在您刚刚与远程仓库链接的本地文件夹中(.git /文件夹中),它的职责是维护所有git元数据(凭证,git历史记录...)。如果没有这个过程,git将很难跟踪有关该项目的历史信息。希望您能理解其中的原因。
答案 1 :(得分:1)
您的本地仓库在提交方面(整个内容的快照)与远程仓库进行通信。他们只在这些提交中讨论单个文件。
您必须克隆(或以其他方式将本地存储库链接到远程服务器),签出要将文件添加到的分支,将文件复制到工作树中,然后添加,提交和推送。
答案 2 :(得分:0)
只需将本地文件放入现有存储库中,运行以下命令 git添加--all git提交 git push
答案 3 :(得分:0)
您可以在执行git add和commit后不强制执行而强制执行。 不推荐,但是你去
git push -f起源分支机构
注意:许多组织不允许强制执行,当您尝试这样做以保持代码质量时,可能会出现以下错误。
远程:已禁止强制推送到此存储库