0

In my Android Studio, changing a text in some line shows the whole file in the diff. Previously this worked properly; now it doesn't work.

I made multiple changes in settings so I can't identify whats the culprit. I have added my own formatter in Android Studio -- don't know if that is causing the problem.

Below I have attached sample git diff output:

@@ -1 +1 @@
-package com.gyanapp.Base;^Mimport android.os.Bundle;^Mimport android.support.annotation.Nullable;^Mimport com.AppVersionModel;^Mimport com.OTPApi;^Mimport com.gyanapp.Screens.ForceUpgrade.Forc
eUpgradeScreen;^Mimport com.gyanapp.Utils.DeviceUtils;^Mimport com.gyanapp.Utils.NetWorkUtil;^Mimport io.reactivex.android.schedulers.AndroidSchedulers;^Mimport io.reactivex.observers.Disposabl
eObserver;^Mimport io.reactivex.schedulers.Schedulers;^M/**^M * Created by Utkarsh Shukla on 03/11/18.^M */^Mpublic abstract class BaseForceUpdradeCheck extends BaseActivity {^M    @Override^M 
   public  abstract void logScreenFlowEventForAnalytics() ;^M    @Override^M    protected void onCreate(@Nullable Bundle savedInstanceState) {^M        super.onCreate(savedInstanceState);^M    
    DisposableObserver<AppVersionModel> disposableObserver =^M                new DisposableObserver<AppVersionModel>() {^M                    @Override^M                    public void onNext(
AppVersionModel appVersionModel) {^M                        if (DeviceUtils.requireForceUpgrade(appVersionModel)) {^M                            startActivity(ForceUpgradeScreen.createIntent(Ba
seForceUpdradeCheck.this));^M                            finish();^M                        } else {^M                            continueNormalProcess();^M                        }^M//        
                continueNormalProcess();^M                    }^M                    @Override^M                    public void onError(Throwable e) {^M                    }^M                    @Override^M                    public void onComplete() {^M                    }^M                };^M        DisposableObserver<AppVersionModel> homeResponseDisposableObserver =^M                NetWorkUtil.provideRetrofit().create(OTPApi.class).checkAppVersion()^M                        .subscribeOn(Schedulers^M                                .io())^M                        .observeOn(AndroidSchedulers.mainThread())^M                        .subscribeWith(disposableObserver);^M    }^M    protected abstract void continueNormalProcess();^M}
\ No newline at end of file
+package com.gyanapp.Base;^Mimport android.os.Bundle;^Mimport android.support.annotation.Nullable;^Mimport com.AppVersionModel;^Mimport com.OTPApi;^Mimport com.google.firebase.perf.FirebasePerformance;^Mimport com.google.firebase.perf.metrics.Trace;^Mimport com.gyanapp.Screens.ForceUpgrade.ForceUpgradeScreen;^Mimport com.gyanapp.Utils.Config;^Mimport com.gyanapp.Utils.DeviceUtils;^Mimport com.gyanapp.Utils.NetWorkUtil;^Mimport io.reactivex.android.schedulers.AndroidSchedulers;^Mimport io.reactivex.observers.DisposableObserver;^Mimport io.reactivex.schedulers.Schedulers;^M/**^M * Created by Utkarsh Shukla on 03/11/18.^M */^Mpublic abstract class BaseForceUpdradeCheck extends BaseActivity {^M    @Override^M    public  abstract void logScreenFlowEventForAnalytics() ;^M    @Override^M    protected void onCreate(@Nullable Bundle savedInstanceState) {^M        super.onCreate(savedInstanceState);^M        Trace myTrace = FirebasePerformance.getInstance().newTrace(Config.TRACE.SPLASH_FORCE_UPGRADE_CHECK_CALL);^M        myTrace.start();^M        DisposableObserver<AppVersionModel> disposableObserver =^M                new DisposableObserver<AppVersionModel>() {^M                    @Override^M                    public void onNext(AppVersionModel appVersionModel) {^M                        myTrace.incrementMetric(Config.TRACE.SPLASH_FORCE_UPGRADE_CHECK_CALL_SUCCESS,1);^M                        myTrace.stop();^M                        if (DeviceUtils.requireForceUpgrade(appVersionModel)) {^M                            startActivity(ForceUpgradeScreen.createIntent(BaseForceUpdradeCheck.this));^M                            finish();^M                        } else {^M                            continueNormalProcess();
^M                        }^M                    }^M                    @Override^M                    public void onError(Throwable e) {^M                        myTrace.incrementMetric(Config.TRACE.SPLASH_FORCE_UPGRADE_CHECK_CALL_ERROR,1);^M                        myTrace.stop();^M                    }^M                    @Override^M                    public void onComplete() {^M^M                    }^M                };^M        DisposableObserver<AppVersionModel> homeResponseDisposableObserver =^M                NetWorkUtil.provideRetrofit().create(OTPApi.class).checkAppVersion()^M                        .subscribeOn(Schedulers^M                                .io())^M                        .observeOn(AndroidSchedulers.mainThread())^M                        .subscribeWith(disposableObserver);^M    }^M    protected abstract void continueNormalProcess();^M}^M
\ No newline at end of file

What's ˆM? What is No newline at end of file?

Tried this but did not work

Bhargav Rao
  • 45,811
  • 27
  • 120
  • 136
JSONParser
  • 1,111
  • 2
  • 13
  • 28

1 Answers1

0

There was an option to change the Line separator in Android Studio on the bottom right. See attached photo below.

In some formatting I had mistakingly changed the line separator to CR and committed. Then the ˆM problem appeared in every file I committed.

I changed the option to LF and committed every file again and now it is resolved.

enter image description here

tripleee
  • 158,107
  • 27
  • 234
  • 292
JSONParser
  • 1,111
  • 2
  • 13
  • 28