Acitvating and deactivating conda environments in git bash

From raju

acitvating and deactivating conda environments in git bash

There seems to be a bug in the activate and deactivate scripts when you switch python versions from 2.7 to 3.6 using conda virtual environments.

consider the following scenario where the base environment has python 2.7 and a py36 virtual environment with python 3.6. Using the default activate script, I can switch to py36 environment. However, I cannot deactivate the py36 environment using its deactivate script. The work around is to use the original deactivate script.

    $export PS1="\n$"
    
    $for i in python activate deactivate; do which $i; done
    /c/ProgramData/Continuum/Anaconda/python
    /c/ProgramData/Continuum/Anaconda/Scripts/activate
    /c/ProgramData/Continuum/Anaconda/Scripts/deactivate
    
    $python --version
    Python 2.7.13 :: Anaconda custom (64-bit)
    
    $source activate py36
    
    (py36)
    $for i in python activate deactivate; do which $i; done
    /c/ProgramData/Continuum/Anaconda/envs/py36/python
    /c/ProgramData/Continuum/Anaconda/envs/py36/Scripts/activate
    /c/ProgramData/Continuum/Anaconda/envs/py36/Scripts/deactivate
    
    (py36)
    $python --version
    Python 3.6.1 :: Anaconda 4.4.0 (64-bit)
    
    (py36)
    $source deactivate
    bash: C:ProgramDataContinuumAnacondaScriptsdeactivate: No such file or directory
    
    (py36)
    $source /c/ProgramData/Continuum/Anaconda/Scripts/deactivate
    
    $for i in python activate deactivate; do which $i; done
    /c/ProgramData/Continuum/Anaconda/python
    /c/ProgramData/Continuum/Anaconda/Scripts/activate
    /c/ProgramData/Continuum/Anaconda/Scripts/deactivate
    

Tested this on Windows 7 Enterprise, Anaconda 4.3.1, git bash 2.14.1