LINUX.ORG.RU

GitHub: законтрибутить в чужой проект через WEB

 , , ,


0

1

Всем привет!

Ситуация: выкачал одну вещь из github, нашел недостатки, подправил. Теперь хочется поделиться наработками с сообществом. Вопрос: как сделать так, чтобы мои изменения попали в исходный репозиторий?

Исходные данные:
- Никогда не работал с git (работал с subversion)
- Завел новый аккаунт на github
- Есть измененный файл, который нужно закоммитить репозиторий (про push/pull ничего не знаю, так что «закоммитить» может и не совсем точно)
- Волей случая не за линуксовой машиной, так что очень желательно все делать через браузер.

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

Да, и как это сделать идеологически правильно: ведь по идее ж собственник репозитория же должен решить, принимать ли мой коммит? Или кто угодно может менять файлы?

Спасибо

P. S. Кому интересно: vim, прикрутил к vim-session поддержку MiniBufExplorer по мотивам этого треда.

★★★★★

Если кратко, то:

  • форкаешь репозиторий
  • создаёшь свою ветку со своими изменениями
  • git push своей ветки в свой репозиторий
  • пулл реквест этой ветки

После твои изменения будут обсуждены, рассмотрены и, если повеезёт, слиты с основной веткой в форкнутом репозитории.

Если что непонятно конкретно, гугли =)

kalterfive ★★
()
Ответ на: комментарий от kalterfive

всё это есть и в очень хорошем виде

Pro Git.

/thread

r3lgar ★★★★★
()

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

l0stparadise ★★★★★
()
Ответ на: комментарий от kalterfive

Просто всё это есть и в очень хорошем виде, вопрос разве что времени.

Да, вопрос времени :)
Сам, конечно же, читал.

форкаешь репозиторий

Значит я все правильно понял из того, что читал. Ок.

Ок, спасибо. Как попробую - отпишусь.

Kroz ★★★★★
() автор топика
Ответ на: комментарий от l0stparadise

как минимум внести изменения в файл ... через браузер вы не сможете.

Изменить файл через браузер в github я могу. Запушить... не знаю.

Kroz ★★★★★
() автор топика

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

annulen ★★★★★
()
Ответ на: комментарий от r3lgar

И причём здесь вим?

Прочитай последнюю строку в топике. Подумал, что может кому интересно будет.

Kroz ★★★★★
() автор топика

Ты можешь реально за 15-20 минут научится пользоваться и гитом и гитхабом, но зато в будущем сможешь посылать пулл-реквесты куда угодно, таким образом приобретя многое — ничего не потеряв.

Желаю тебе успехов.

kep
()

kalterfive порядок действий тебе уже описал. В сети есть много хороших обучалок. Просто пройди их, например:

https://try.github.io/levels/1/challenges/1
https://pcottle.github.io/learnGitBranching/
https://www.atlassian.com/git/tutorials/making-a-pull-request
hope13 ★★★
()

Есть гуевины для гита, например sourcetree (я надеюсь ты не с хромбука или чего-то такого хочешь коммитить), хотя имхо с ними не многим проще разобраться чем с гитом в командной строке.

observable
()
Ответ на: комментарий от kalterfive

Нашел более простой путь: https://www.youtube.com/watch?v=V74l_zS1x8E
0. Форкнуть проект кнопкой Fork. Не знаю нужно ли это, но я так сделал.
1. В том же репозитории (то есть не в форке) просто из браузера отредактировать файл. Сделать Commit.
2. Там же появится кнопка сделать Pull Request - сделать. Убедиться что pull request добавился (справа на панеле зайти в список pull request'ов).

Всем спасибо за советы.

Kroz ★★★★★
() автор топика
Ответ на: комментарий от Kroz

Можно и так. Но если есть опыт работы в терминале, то куда проще сделать git diff и повторить описанные мной выше пункты, меньше телодвижений.

kalterfive ★★
()
Ответ на: комментарий от Kroz

Это интересно, но выходит за рамки вопроса. Возмущает меня каша из тегов с того момента, как теги стали обязательными, но не принимай на свой счёт.

r3lgar ★★★★★
()
Ответ на: комментарий от kalterfive

Можно и так. Но если есть опыт работы в терминале, то куда проще сделать git diff и повторить описанные мной выше пункты, меньше телодвижений.

Опыт-то есть, но, как я писал

- Волей случая не за линуксовой машиной, так что очень желательно все делать через браузер.

Kroz ★★★★★
() автор топика
Ответ на: комментарий от Kroz

Для венды - есть git bash aka git for windows. Который не только git, но ещё и баш и греп, и find и даже du и прочие удобные штуки. И, даже некий покоцанный vim (как и непокоцанный умеет в большие логи, в отличии от большинства вендовых поделий).

Ставиться оно - 3 минуты. Если ещё и терминал нормальный поставить, так вообще лепота. Умел бы тамошний ln -s в виндовые симлинки ещё.

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

Ну и для гита ессно.

pon4ik ★★★★★
()
Ответ на: комментарий от Kroz

Ты все-таки гит осиль. Потому что напрягают помогатели, которые которые в пулреквесте выкатывают пучок коммитов вместо одного.

Закончится тем, что попросят засквошить и отправят читать маны. Экономь чужое время. Сделай все заранее сам.

Vit ★★★★★
()

Небольшие изменения делаются совсем просто: выбираешь нужный файл в чожой репе, жмешь иконку с карандашом в заголовке над содержимым файла, редактируешь, внизу заполняешь описание коммита и жмёшь propose, потом ещё раз для создания pull request (обычно для pull request из одного коммита достаточно взять описание самого коммита, и это происходит автоматически). Это создаёт форк и pull request.

Но на деле это подходит только для каких-нибудь опечаток в документации - в исходниках, например, даже минимальные изменения нужно как минимум протестировать. Поэтому таки осиль git.

slovazap ★★★★★
()

Раз такое дело - спрошу гит-господ.
1. Где лучше всего курить git? Или man'ом единым? Туториалов много, не факт, что там раскрываются подводные камни.
2. Правильно я понимаю, что до сих пор нет гуевых утилит, которые покрывают хотябы даже самые частые юзкейсы гита? (за исключением tortiose под оффтопик?)
3. Отдельным пунктом реквестирую годную доку/туториал по мержу веток и резолвингу конфликтов всех типов. С матчастью.
// Пользую svn на большом проекте, на горизонте тоже большой проект, но с гитом (и кучей бранчей, соответственно).

bytecode ★★
()
Последнее исправление: bytecode (всего исправлений: 2)
Ответ на: комментарий от slovazap

в исходниках, например, даже минимальные изменения нужно как минимум протестировать

Ну, это понятно. Для себя-то делал изначально, у меня работает. А в github copy - paste в нужное место. Благо только один файл изменялся.

Поэтому таки осиль git.

Это в планах

Kroz ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.