[git] IDEA-124821 Don't make the auto-generated changelist default

It is not needed: commit dialog can easily commit a non-default
changelist. On the other hand, making the auto-changelist non-default
will help to avoid such problems as IDEA-103094, when the changelist
is not removed after cherry-pick for some reason and then is used as
the default one.

This also should help with IDEA-120133.
(cherry picked from commit 46df798)
[git tests] More correctly apply file modifications

\n used to be escaped;
modification used to append instead of overwrite.
(cherry picked from commit de1fc33)
[git] IDEA-84771 don't propose to commit empty changelist on cherry-pick
(cherry picked from commit 0a3e379)
[git] IDEA-116748 Fix race condition issue in cherry-pick
(cherry picked from commit 4dd17f7)
[git] remove the created changelist, not the possibly null returned one

+ add a check that changesMoved receives even initiated by us
(cherry picked from commit 7cf6d7c)
[git] fix deadlocks in cherry-pick, including IDEA-95523

Refresh changes in the background (fixes IDEA-95523),
invoke callback in the background as well (fixes newly introduced
lock with waiting in the EDT).
(cherry picked from commit 9b28336)
[git] IDEA-130898 Make GitPushTagMode deserializable
(cherry picked from commit e865a0f)
[git] IDEA-130898 Fields must be final
(cherry picked from commit 3deef87)
[git] IDEA-130898 fields must be not-final even when public
(cherry picked from commit 7355361)
[git] Fix a misprint: the parameter is nullable
(cherry picked from commit f479e27)
[log] Use EmptyVisibleGraph when filter matches nothing

PermanentGraph throws an exception not being able to build from empty
commit set.
(cherry picked from commit aa7b464)
[log] Diagnostics for "No references pointing to head" error

Print last 100 commits and all refs.
Move code from the refresher: there this diagnostics is not
needed anymore.
(cherry picked from commit 6ee7acd)