Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
git混乱-克隆回购协议返回的是过去的版本_Git - Fatal编程技术网

git混乱-克隆回购协议返回的是过去的版本

git混乱-克隆回购协议返回的是过去的版本,git,Git,我对git的使用有些困惑。 我将一个回购从一个公司克隆到另一个公司,新的克隆是前一段时间处于活动状态的原始公司的状态。因此,它的克隆是一个过去的版本。 当我使用“git log-n1”查看新repo(克隆)的最新提交信息时,它与我克隆的原始repo(最新提交信息)匹配,因此这让我更加困惑,因为git表明这两个都是最新版本。 我在ubuntu服务器上使用Git1.5.4.3。 有什么想法吗 谢谢您与其他回购协议在同一分行吗 (默认情况下,您获得master,并且在切换之前,其他分支中较新的提交不可

我对git的使用有些困惑。 我将一个回购从一个公司克隆到另一个公司,新的克隆是前一段时间处于活动状态的原始公司的状态。因此,它的克隆是一个过去的版本。 当我使用“git log-n1”查看新repo(克隆)的最新提交信息时,它与我克隆的原始repo(最新提交信息)匹配,因此这让我更加困惑,因为git表明这两个都是最新版本。 我在ubuntu服务器上使用Git1.5.4.3。 有什么想法吗


谢谢

您与其他回购协议在同一分行吗


(默认情况下,您获得master,并且在切换之前,其他分支中较新的提交不可能隐藏。)

首先确保所有更改都提交到远程存储库中

git add .
git commit -m "my commit message"
运行
git status
时不应显示未提交的更改

然后在本地副本上尝试运行

git pull origin master #or whatever branch you're on
您可以通过运行

git branch -a
-a
显示本地分支以及从中克隆的存储库中的分支

如果您需要从远程存储库切换到上的另一个分支,则需要首先设置本地跟踪分支。该命令将类似于:

git branch --track my_branch origin/my_branch
git checkout my_branch
有疑问时就跑

git pull origin master #or whatever branch you're on

这将使您的本地工作副本与远程存储库一起更新。

如果您对换行符的处理不一致(
core.autocrlf
),则可能会发生这种情况

git add .
git commit -m "my commit message"
做一个简单的更改(在一个文件中添加一行)


在这里粘贴所说的
git diff
git status
cat.git/config
以及
git commit-am“test”

的确切输出您能给出在每台计算机上键入的命令吗?我可能更容易了解发生了什么。当然,在第二次比较中,我做了:$git clone repoURL,然后检查是否有正确的SHA1签名,在克隆repo中,我做了:$git log-n1我只是比较了两台机器上的哈希,它们匹配。。。因此,这两个分支上的repo似乎处于相同的状态,它应该是
git log-n1 origin
,否则您将在当前分支上列出提交,它可能是“master”,并且除非您在其上执行
git pull
,否则“master”分支不会是最新的wrt远程更改。我没有在这两个分支上创建任何分支,所以他们都在和总公司合作。当我克隆时,它创建了一个从头开始的repo,因此即使我想感谢,我也无法创建分支,因此原始repo上的“git branch-a”仅显示主分支(*master),而新克隆repo上显示的是(*master\n origin/HEAD\n origin/master)。老实说,我不知道这意味着什么。我刚做了“git pull origin master”,它告诉我它是最新的。。。所以我认为它的原始状态不正确,或者我应该说我认为签入的repo不代表工作目录状态。。。在原始repo上,每次我执行“git commit-m‘test’”,它都会提交最新的更改,就像它第一次看到它们一样……您的远程repo上可能有“未老化”的更改。在远程回购上运行
git add.
以暂存所有更改。然后
git提交-m“我的消息”
。然后试着从本地repo再次运行
git pull origin master
。。。即使在我不更改任何内容的时候,也会执行“git add.”&“git commit-m“test”不断地重新提交更改,就好像它是第一次看到它们一样。。。相反,它应该告诉我“无需承诺”或类似的事情。我有一种感觉与此有关