add smart git fetch and git push support