Когда вы удалили v1 и переименовали v2, вы делали 'rm -r ProjectName' и 'mv ProjectName2.0 ProjectName' или вы делали 'git rm -r ...' и 'git mv ...'?
Это звучит как первое, и в этом случае вам нужно обновить git, чтобы сообщить ему, что вы внесли все изменения. Один из способов сделать это - сделать «git add ProjectName», а затем «git add -u». Это обеспечит обновление индекса так, что 1: все добавленные или удаленные файлы в ProjectName будут распознаны, и 2: все измененные или удаленные файлы во всем хранилище будут распознаны.
В качестве альтернативы, 'git add -A' будет гарантировать, что индекс отражает текущее состояние рабочего каталога, если у вас нет каких-либо предложений в вашем файле .gitignore.
Обновив индекс, вы можете зафиксировать как обычно.
Если у вас возникли проблемы с пониманием концепции индекса в git и тем, как добавление / удаление файлов отличается от более простых VCS, которые не имеют такой концепции, вы можете попробовать прочитать http://git.or.cz/gitwiki/WhatIsTheIndex или , если у вас есть больше времени, http://tom.preston -werner.com / 2009/05/19 / the-git-parable.html . Последний относится к индексу как «промежуточная область», что является разговорным термином, который становится довольно распространенным, поскольку многие люди находят его более наглядным.