я к нему отношусь как к инструменту. Если в своей ветке, с которой больше никто не работает, я исправляю опечатки, которые не имеют никакой исторической ценности, то ничего плохого я в этом не вижу. Если же работают 2+ человека, то, конечно, делать force push не стоит
ну не всегда. Иногда заказчик внезапно решает, что ему нужно совершенно противоположное. Или что часть системы вообще не нужна. Часто заказчик сам не знает чего хочет
Программирую в основном на IDEA (иногда jDeveloper, в зависимости от проекта). Но когда нужно по быстрому проверить что-нибудь или метод отладить, иногда это удобнее на NetBeans
там и экран и батарея