如何将子目录中的单个文件推送到Gizub(而不是主目录)?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (20)

我已经在存储库的子目录中更改了一个文件,我只想将该文件推送给Gizub。

我对一个文件做了一个小小的修改,我不想重新上传整个存储库。

看起来,到目前为止,我所看到的所有指令都要求我在本地与主程序合并,然后将本地主机推到远程原点。

我怎么才能把那一份文件推送出去呢?

提问于
用户回答回答于

让我首先说一下,Git的工作方式是您没有推送/获取文件;嗯,至少不是直接的。

正在推动/获取参考,这一点,提交。然后在git中提交是对对象树的引用(其中文件表示为对象,以及其他对象)。

因此,当推送提交时,它会推送一组引用,如下图所示:

如果你还没有推动你的主分支,整个分支的历史将被推开。

因此,在示例中,当提交和推送文件时,如果以前没有按,那么整个主分支将被推送。

要按照你的要求,需要创建一个没有历史记录的干净分支。

用户回答回答于

当进行推送时,git只接受所提交的更改。

记得当你做一个git status它显示了你上次推送后更改的文件?

一旦提交了这些更改并进行了推送,它们是唯一被推送的文件,所以不必担心整个主程序都会被推送,因为在现实中并不是这样。

如何推送单个文件:

git commit yourfile.js
git status
git push origin master

扫码关注云+社区