“我要跑步吗?”;git pull“;和我第一次在同一个目录中;“git克隆”;

“我要跑步吗?”;git pull“;和我第一次在同一个目录中;“git克隆”;,git,Git,对不起。读了git文档后,我仍然感到困惑。 我首先做了: $[home/myname]git clone git@bitbucket.org/.../nlp.git 它在home/myname下创建了“nlp”目录。然后我在下面写了很多代码 $[/home/myname/nlp/.../myapp/] 现在我需要拉最新的nlp。我是在我的主目录下做的吗 $[home/myname]git pull git@bitbucket.org/.../nlp.git 它会影响我在“myapp”中编写

对不起。读了git文档后,我仍然感到困惑。 我首先做了:

$[home/myname]git clone git@bitbucket.org/.../nlp.git
它在home/myname下创建了“nlp”目录。然后我在下面写了很多代码

$[/home/myname/nlp/.../myapp/]
现在我需要拉最新的nlp。我是在我的主目录下做的吗

$[home/myname]git pull git@bitbucket.org/.../nlp.git
它会影响我在“myapp”中编写的代码吗?
谢谢你的帮助

您在与存储库相同的目录中运行
git pull
,因此在本例中,这意味着在
nlp
目录中运行它。如果您试图在非Git目录中执行此操作,则会收到一条有用的错误消息:

fatal:不是git存储库(或装载点/home/之前的任何父存储库)
在文件系统边界处停止(未设置跨文件系统的GIT_发现)。

如果您直接在具有新代码的分支上工作,则尝试从上游提取新代码可能会影响您的代码。为了缓解此问题,建议您自己创建一个本地分支,然后从master中取出最新的副本,然后将该master分支合并到本地分支中并处理任何冲突。

您需要将cd放入克隆目录,在您的情况下是
nlp
nlp.git
,然后在其中运行任何git命令。git clone是唯一需要从父目录执行的例外。可能重复的@Joe:我不认为这是重复的。谢谢!我在“myapp”中编写的代码会受到“git pull”的影响吗。我想确保它们不会消失或被合并。正如这里的错误消息所暗示的,您也可以从
nlp
的子目录运行
git pull
,例如
/home/myname/nlp/../myapp/
@8bit树:您完全正确,但是我的偏好是在顶级目录中,因为我通常做
git pull
git add.
就像它是第二天性一样,
git add.
如果你在一个没有变化的子目录中,它将不起作用。是的,但我认为人们知道这是一个选项可能会有所帮助。
fatal: Not a git repository (or any parent up to mount point /home/<user>)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).