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
  • 50,140
  • 28
  • 121
  • 140
JSONParser
  • 1,112
  • 2
  • 15
  • 30

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
  • 175,061
  • 34
  • 275
  • 318
JSONParser
  • 1,112
  • 2
  • 15
  • 30