ConEmu is a Windows console emulator with tabs, which presents multiple consoles and simple GUI applications as one customizable GUI window with various features. ConEmu can be used with any other console application or simple GUI tools.
With native windows commands, using ConEmu is same as CMD, but with lots of enhancement, you can also use MSYS within ConEmu with following steps:
Set a ConEmu Task as
set CEMDIR=%ConEmuWorkDir% & cmd /k /path2msys/bin/conemu-msys-32.exe
it will starts MSYS within ConEmu with current ConEmuWorkDirIf want open ConEmu and MSYS within Atom, can try the plugins open-conemu-here and open-msys-here.
MSYS is a collection of GNU utilities such as bash, make, gawk and grep to allow building of applications and programs which depend on traditionally UNIX tools to be present. An example would be building a library that uses the autotools build system. Users will typically run
./configure
thenmake
to build it.
An recently alternative is MSYS2, an independent rewrite of MSYS, based on modern Cygwin and MinGW-w64 with the aim of better interoperability with native Windows software. It works with the pacman package manager. A challenge with MSYS is that it works well with packages build within this environment, but may not be compatible with standard Windows system package, such as Python.
I suggest the MinGW-builds version.
In /path2msys/etc, add a line with
c:/TDM-GCC-64 /mingw
if you want to use the TDM-GCC. it can be the path to any other GNU Toolchain you choose.
If you want use the ConEmu as the terminal for MSYS, it is better to replace the cd "$HOME"
with the following codes to the file /path2msys/etc/profile
if [ -n "$CEMDIR" ]; then
CEMDIR1=$(echo "$CEMDIR" | sed -e 's/\\/\//g' -e 's/://')
cd "/$CEMDIR1"
else
cd "$HOME"
fi
You can add the /path2msys/bin to Windows Path, but this is not necessary, since you should always use MSYS command within MSYS environment.
There are several versions of GNU Toolchain for Windows, include MinGw, MinGw-w64 and TDM-GCC. MinGw only can build 32 bit binaries, MinGw-w64 supports both 32 and 64 bit binaries, but need to install both versions, while TDM-GCC supports both 32 and 64 bit binaries with switching by adding one compile option. My choice is TDM-GCC.
The installation of TDM-GCC is similar to usual Windows programs, it is better to choose all packages, the gfortran is not installed by default.
Git Config
# global username and email, the local one is associated with project
git config --global user.name "username"
git config --global user.email "useremail"
# ssh key
ssh-keygen -t rsa -f ~/.ssh/nameofrsafile -C "useremail"
# put the key in server (github), then test with:
ssh -T git@github.com
if working with several servers, should use ssh config file, with contents like:
Host github.com
RSAAuthentication yes
Port 22
IdentityFile ~/.ssh/id_rsa_xxx
Initialize a Git Project:
cd /path2project
git init
Local Git
# check status
git status
# add files
git add <file>
git add -A
# commit
git commit -m "information"
# check log
git log
# remove changes
git checkout -- .
# check current file status and last commit
git diff
# versions
git reflog
git reset --hard versionid
Github or other git server
# Add Origin repo
git remote add origin sshorhttps_address
# if the server repo contains readme or license
git push -u origin master
# push local commit to server
git push
# get last commit from server
git pull