git:在现有文件上签出分支而不覆盖它们
我们正在将存储库从另一个SCM移动到git。这本身不是问题,但我需要向我的用户提供简单的说明,说明check如何迁移他们的存储库克隆(请记住,我的大多数用户都不是程序员,只有非常基本的终端知识) 我希望迁移可以按如下方式进行:git:在现有文件上签出分支而不覆盖它们,git,Git,我们正在将存储库从另一个SCM移动到git。这本身不是问题,但我需要向我的用户提供简单的说明,说明check如何迁移他们的存储库克隆(请记住,我的大多数用户都不是程序员,只有非常基本的终端知识) 我希望迁移可以按如下方式进行: 转到包含签出文件的文件夹 运行git init 连接到远程存储库git远程添加源URL 同步数据git fetch 签出文件git checkout master 现在,我的问题是第5步,因为git抱怨“未跟踪的工作树文件将被签出覆盖”。我是否可以强制它签出分支而不覆盖文
git init
git远程添加源URL
git fetch
git checkout master
基本上,我想告诉git“你现在正在进行最新的主签出,不要对文件做任何事情”。有没有一种理智的方法来实现它?当然,我可以随时要求我的用户制作另一个克隆并在上面复制他们的旧文件,但如果可能的话,我希望避免这样做 您可以尝试以下操作,而不是
git checkout master
:
git reset origin/master
然后指导他们如何检查差异。代替
git checkout master
,您可以尝试:
git reset origin/master
然后指导他们如何检查差异。您不能/不想这样做,因为未跟踪的文件可能会被Git覆盖,或者它们保持不变,然后它们与新分支/回购不同步。您不能/不想这样做,因为未跟踪的文件可能会被Git覆盖,或者它们保持不变,然后与新分支/回购不同步。不幸的是,这会将所有文件标记为已删除。。。基本上,它停止跟踪文件。不知道为什么。嗯,然后试试简单的
git重置
(这是--混合
的快捷方式,而且它也不会修改磁盘上的文件)--唯一要避免的是:git重置--hard
git add-a
),不幸的是,这会将所有文件标记为已删除。。。基本上,它停止跟踪文件。不知道为什么。嗯,然后试试简单的git重置
(这是--混合
的快捷方式,而且它也不会修改磁盘上的文件)--唯一要避免的是:git重置--hard
git add-a
)