gitTalk: когда лень вспоминать команды для гита. ai.. ai. Git.. ai. Git. github.. ai. Git. github. gitTalk.. ai. Git. github. gitTalk. Go.. ai. Git. github. gitTalk. Go. golang.. ai. Git. github. gitTalk. Go. golang. ИИ.. ai. Git. github. gitTalk. Go. golang. ИИ. искусственный интеллект.

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

Суть проекта:

Проект был создан ради того чтобы вопервых заполнить моё портфолио и во вторых – исправить мою забывчивость в синтаксисе гита, т.к я иногда забываю команды для него, что замедляет мой прогресс

Цели проекта:

  • Сделать лёгким и удобным для использования

  • Сделать лёгким для правки его кода

  • Постараться не облажаться

Проект я решил писать на Golang т.к в портфолио у меня было мало проектов связанных с ним т.к мне всегда было интереснее писать на С++ опенгл и учить vulkanAPI. Но и в golang я отставать не хотел. И в связи с тем, что в прошлом проекте я застрял на изучении того как, мне достучаться до гемини АПИ через ключ, я пошёл искать возможные инструменты связанные с этим и нашёл как по мне хороший пакет: google.golang.org/genai. Он оказался очень прост в использовании так что проект создан на этом пакете.

Для начала я столкнулся с проблемой, что гемини всегда пытался ответить пользователю а не сделать команды (Т.к там есть тег который если гемини пишет, то ответ идёт пользователю а не вводиться в консоль). Но это легко было исправлено более строгим промптом.

Следующая проблема оказалась в том что если гемини отвечает допустим командой git commit -m “Fixed readme.md”, тогда мой код считал что пробел внутри кавычек означает что это следующий аргумент и разрезал что полностью ломало команду. Я это исправил переходом на bash в строке

cmd := exec.Command("bash", "-c", cmdStr)

И в итоге теперь у нас есть утилита готовая к использованию всего ОДНОЙ командой и это gitTalk “Инициализируй репозиторий и закоммить его под именем: привет мир и запушь на гитхаб по юрл: https://github.com/nik251021/gitTalk

Ссылка на инструмент: https://github.com/nik251021/gitTalk

Автор: nik2510

Источник