搜尋

首頁  >  問答  >  主體

git、samba、git bash的一個問題

問題描述:
我在虛擬機器上面搭建了本地的web LAMP服務,虛擬機器上已經安裝了git,網站根目錄為/var/www/web_root,該目錄用samba映射到windows。

在windows下git clone了專案到samba映射的地方。 現在我用git bash 裡面和虛擬機器裡面分別git status。

結果如下:

1--------------------- windows 下git bash 中git status結果
$ git status
On branch master
Your branch is up-to-date with ' origin/master'.

2--------------------- 虛擬機器linux 下git status結果
[root@yangshushu jnexpertweb]# git status
On branch master
Your branch is up- to-date with 'origin/master'.
Changes not staged for commit:
(use "git add ..." to update what will be committed)
(use "git checkout -- .. ." to discard changes in working directory)

。。。。。。 下面是很多的红色标识文件

windows下面git已經配置過(key放在遠端git配置),虛擬機器裡面沒配置過,不知道是不是這個原因,不明白怎麼回事。
請教~~

为情所困为情所困2811 天前716

全部回覆(3)我來回復

  • PHPz

    PHPz2017-05-02 09:25:08

    有可能是換行符的問題,windows下換行是CRLF(回車+換行)兩個字符,linux下換行是LF(換行)一個字符;
    如果windows下的項目clone到linux後,git會對換行符進行自動處理,將所有CRLF轉換成LF,這導致所有的檔案都發生了變化。
    解決思路:禁止git自動轉換換行,或是手動設定git的換行符

    回覆
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-02 09:25:08

    windows和linux細節上的不同太多,建議用linux擇只用linux,可以避免很多坑。 。 。

    回覆
    0
  • 大家讲道理

    大家讲道理2017-05-02 09:25:08

    我也遇到此問題,具體不知道原因,繼續關注此問題。

    回覆
    0
  • 取消回覆