我有一个Windows 7主机系统,我想使用带有LAMP堆栈scotch box的流浪汉VM。项目存储库需要符号链接(*),在通过ssh克隆存储库后,它会直接更改。
vagrant ssh
git status
(来宾)表示我的所有符号链接都已修改我已经检查了我的git配置并按照answers from this question中的建议进行了更改。什么都没有帮助。
但是,当我将存储库克隆到另一个非共享的VM文件夹时,根本没有文件更改。
那么如何防止共享文件夹中的文件发生变化? (我不敢删除符号链接......)
编辑:更改的符号链接示例
git diff script/zend
回声:
diff --git a/script/zend b/script/zend
--- a/script/zend
--- b/script/zend
@@ -1 +0,0 @@
-../source/solar/script/solar
\ No newline at end of file
(*)由于默认情况下不允许使用符号链接,因此我按照this answer中的说明更改了我的流浪文件。
答案 0 :(得分:0)
您的来宾是VM Linux吗? Linux和Windows编码回车不同。 DOS使用回车符和换行符(" \ r \ n")作为行结尾,Unix只使用换行符(" \ n")。
答案 1 :(得分:0)
您正尝试跨不同的操作系统环境共享目录。每个操作系统处理不同的操作,并以不同的方式对其进我建议你不要尝试通过共享文件夹来处理双方的git repo
相反,解决此问题的一种方法是在共享文件夹上托管裸存储库并在本地克隆到VM(以及Windows框)。根据需要推/拉变化
来自主机(git for windows?)
cd shared/folder
mkdir <repo name>.git #.git isn't really needed but is typical
cd <repo name>.git
git init --bare
cd <current repo location>
git remote add origin <path to repo.git folder>
git push --all
来自vm
cd ~
git clone <path to shared folder bare repo.git>
确保在VM上设置用户名和电子邮件地址,以便将提交归因于正确的人(使用git config)