我目前正在与其他一些人合作开发一个大型 Java 项目,并且已经克隆了存储库以便在我的家用 PC 上使用它。我继续在这个巨大项目的整个目录/子目录结构中更改了 2 个文件,并且只想将我编辑的这两个文件推回存储库。
有没有我可以使用的命令来完成这个?谢谢。
如果您添加了新文件,请确保添加它们git add
git commit -a -m "Commit message"
git push
要获得他们在您之前所做的任何新更改,您需要先拉
git pull
然后修复任何合并冲突并提交合并。
假设您提交了更改并且它位于服务器上已经存在的分支中,您可以简单地使用git push
.
git clone
完成存储库并对文件进行更改后,您可以使用它来git status
查看哪些文件已更改。
使用 选择要提交的更改git add
。当您选择(“暂存”)您希望提交的所有更改时,git commit
它们。这将提交到您的本地存储库。
要将提交推送到 github,请使用git push
.
如果您是 git 新手,我强烈建议您至少浏览一下Pro Git 书籍。它为一大堆 git 主题提供了一些很好的图表和解释;我发现它非常有用。特别是,对于这个问题,请查看“记录对存储库的更改”和“使用遥控器”部分。
StackOverflow Git FAQ / Wiki也有一些关于常见问题的简洁信息;其中一些与您的相关,例如这个。
编辑:顺便说一句,关于你问题的这一部分:
...只需推送我编辑的那两个文件...
Git 考虑的是提交,而不是文件。您不能在存储库中推送文件的子集,因为提交包含提交时的整个存储库。git push
但是,其他网络类型的git
命令非常擅长计算它们应该发送到远程存储库的内容。不用担心,即使存储库很大,如果您更改了两个源文件,agit push
也不会将每个文件都推送回远程存储库。
git pull origin master
- 确保您的主分支是由 origin(通常是 github)定义的远程存储库中的最新更改是最新的。
git status
- 显示您在您所在的分支中修改的文件。
git add
. - 将您修改的文件添加到当前分支。
git commit
- 将更改的文件保存到当前分支。
git push origin master
- 将主分支中更改的文件发送到远程存储库。