git只添加一些已更改的文件

时间:2016-04-05 12:57:29

标签: git version-control

我在Git中有一个名为development的远程分支,还有本地开发分支。我修改了让3个文件:

git status
modified file1
modified file2
modified file3

现在我想添加并提交file1并将其推送到远程分支(file2和file3将在稍后添加,但现在不添加)。我试图推动它但git不允许推动,因为远程头部比我的本地。然后我尝试了git fetchgit rebase但是,然后,git说我没有跟踪文件。 Git建议将它们藏起来。我是git的新手,到目前为止我所知道的是git stash是为了在切换另一个分支时保存工作变更。在我的情况下,我没有切换我的分支。继续git stash是否安全?还是有其他方法吗?我感谢您的解释。

2 个答案:

答案 0 :(得分:1)

在推送之前,您需要提交更改。它由当地人完成:

#add files to specific commit
git add file1

# commit added files
git commit -m "init commit"

# stash file2 file3
git stash

# now, when working dir is clean you can safly pull updates from remote repo
git pull

# push your changes (your commit) to remote repo
git push origin master

#return file2 file3 changes
git stash apply 

答案 1 :(得分:0)

您可以选择性地暂存文件。

例如,让我们在第一次提交中说你只想使用file1并仅推送它:

git add file1
git commit -m "first bit of changes"
git push

使用Git,您可以在非常精细的级别上调度文件,从而允许您以合理的方式创建提交。

至于问题的其他部分......

  

我试图推动它但git不允许推动因为远程hed   比我当地的

是的,这绝对是stash的一个很好的用例。

这样做:

git stash
git pull
git stash pop