Patrick Skelton Ответов: 2

Можно ли получить предупреждение перед редактированием файла на ветке в git в visual studio?


Я знаю, что этот вид идет вразрез со всем этосом Git, но ...

Возможно ли в Visual Studio получить какое-то предупреждение перед первым редактированием файла в определенной ветви?

Я хотел бы принять хорошую практику всегда создавать новую ветвь, прежде чем начать работу над новым кодом, но - как бы я ни старался - я всегда начинаю редактирование кода, а затем после редактирования одного или нескольких файлов понимаю, что работаю над основным развивать ветка.

Что мне нужно, так это какой-то способ полузащиты ветви, чтобы она выскакивала с предупреждением или была доступна только для чтения (или давала мне легкий электрический шок), поэтому я вынужден создавать новую ветвь для каждой функции.

В защиту моей это-просто-не-ГИТ-путь вопрос: я провел годы, работая с Microsoft SourceSafe. Он работает совершенно по-другому, и я бы не хотел возвращаться к нему, но мне нравилось, что зарегистрированные файлы могут быть только для чтения, поэтому я знал, когда начинаю что-то новое.

Я должен отметить, что это предназначено для использования в локальной установке Git, которая толкает к удаленной учетной записи BitBucket.

Любые предложения будут оценены по достоинству.

Что я уже пробовал:

Я попробовал хороший сеанс Google и посмотрел на различные расширения Visual Studio.

2 Ответов

Рейтинг:
2

Patrick Skelton

Я нашел частичное решение этой проблемы. У меня есть небольшой пакетный файл, который я запускаю с помощью сочетания клавиш Visual Studio, что делает каждый исходный файл в моей локальной копии проекта доступным только для чтения.

Обычно я не забываю запускать его всякий раз, когда завершаю работу над функцией в ветке Git. Поэтому, когда я в следующий раз прихожу, чтобы запустить новую функцию, и пытаюсь отредактировать файл, я получаю предупреждение о том, что файл доступен только для чтения. (Это напоминает мне о моих не очень хороших старых днях использования Microsoft SourceSafe.)

Я думаю, что большинство людей сочли бы предупреждение только для чтения раздражающим, но оно легко отклоняется, и оно действительно напоминает мне дважды проверить, что я начал новую ветвь Git, когда я начинаю работать над чем-то новым.


Рейтинг:
1

Dirk Bahle

Я не знаю об этом правиле, но вы должны проверить раздел настроек в вашем проекте GitHub - на самом деле есть настройки, которые можно использовать для защиты от фиксации в главной ветви.

Существуют правила защиты ветвей, которые можно использовать для защиты отдельных ветвей:
Определение возможности слияния запросов на вытягивание - документация пользователя[^]

Вы можете создать ветвь при фиксации кода. Просто убедитесь, что вы находитесь на правильной ветке, когда совершаете коммит

-> Когда вы это сделаете, вы должны понять, что находитесь в главной ветви - вы все еще можете создать локальную ветвь, прежде чем зафиксировать ее - затем, когда вы опубликуете - вы опубликуете в ветви, а не в главной.


Patrick Skelton

Спасибо за ответ. К сожалению, это не сработает для меня, так как я не использую GitHub. Я использую локальную установку Git и нажимаю на удаленную учетную запись BitBucket.

Извини, мне следовало выразиться яснее. Я изменю свой первоначальный вопрос.