0

我有一个在 qa 环境中工作的场景。我使用 vi 编辑器对源代码进行了一些更改。现在我想将上述更改提交到分支中,然后可能将分支推送到原点。但起初我想提交我的更改。

这是 git status 为我显示的内容:

Git 截图 现在我读到的是使用 git -m "Msg" .. 我可以提交我的更改。但我不确定这一点,另一件事是我看到消息Your branch is ahead of 'origin/master' by 1 commit所以我不确定如何进一步进行。我对 Git 很陌生,不想破坏东西。如果您希望我编写任何命令并粘贴输出,请告诉我。

4

3 回答 3

2

这是 Git 101,CodeMonkey,你将在第一天的 Git 课上学到的东西,但我会咬一口。

它会在该屏幕上告诉您要做什么 - 用于git add <file>添加每个文件,例如git add docs/smarty/templates/google.tpl添加它。作为一种快捷方式,如果您想添加所有这些修改过的文件,请使用git add --update .(注意点)。如果你在那个时候再做一次git status,它会告诉你如何从那里继续进行提交,这将是git commit -m'Your commit message'.

您是在原点之前的一次提交,因为您要么已经提交,要么您正在跟踪的原点分支已移回您现在所在位置之前的提交。提交这些文件后,您可以git push origin 1693-m将源远程的分支与您的分支同步。如果自从您上次从那里获取或拉取新提交后,新提交已经进入源,您将不得不在这些之上重新设置您的新提交,可能使用 a git pull --rebase,然后执行git push.

于 2013-05-15T00:45:01.163 回答
1

当您git pullgit push远程您的分支将与远程​​分支同步。在那之后,每次你提交一些东西,你就会失去一个单位的同步。因此,' Your branch is ahead of 'origin/master' by 1 commit '意味着您在最后一次推/拉之后提交了一次。

这都是正常的。您将在本地进行许多提交,愉快地改进您的代码,然后,当您准备好时,您将git pull提交git push到远程。您这样做是pull为了让团队中的其他人可能做出的其他改变。之后pull,如果有更改,您将重新检查您的代码,修复任何问题,然后push.

于 2013-05-15T00:52:39.187 回答
1

三阶段思维

git中,您分三个阶段使用源代码:

编辑-添加-提交

首先,您编辑文件。当您对文件进行更改时, 的输出git status将更改以反映您所做的修改。您可以使用 来查看迄今为止所做的更改git diff

接下来,您添加或暂存您的工作。使用 .暂存对特定文件的所有更改git add <file>。同样, 的输出git status将改变以反映您上演的内容。您可以查看已暂存的更改git diff --cached

最后,您提交更改。当你运行时git commit,你已经暂存的任何文件都将被捆绑到一个提交中。提交包括存储库的快照、提交消息、时间和作者。您可以使用 . 查看您的提交git loggit log -p特别是将显示每次提交中所做的更改。

推动

在您尝试推送任何代码之前,我建议您与您的同事讨论此存储库的贡献指南。例如,他们可能希望您推送到某个分支或通过代码审查过程。

于 2013-05-15T00:54:48.053 回答