LINUX.ORG.RU
ФорумTalks

Программисты и Git

 


0

1

Мнение так называемого программиста из одного полупубличного треда:

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

Тыканье носом в 'git commit --author' не помогает.

А потом эти люди пишут код.

★★★★★

Мнение так называемого программиста

И кто же его «программистом» называет? Он сам себя? Ну я вот могу себя балериной назвать и рассказать о том, как нужно балет танцевать.

AntonK
()

В разговоре звучали слова «Бернская конвенция» и «презумпция авторства»?

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

Самое забавное, что приведённая выше цитата родилась в треде, где её автор сначала назвал меня программистом (которым я в жизни не был), а потом сам же радостно начал опровергать мою причастность к программированию :)

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

Его собственный проект до сих пор в Subversion.

А неважно. После пафосного «ты демонстрируешь незнание базовых вещей», он фанбой.

tailgunner ★★★★★
()

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

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

автор файла - тоже коммитер

Нет. Более того, автор даже не у файла, а у патча - один человек написал, другой закомиттил.

tailgunner ★★★★★
()
Последнее исправление: tailgunner (всего исправлений: 1)
Ответ на: комментарий от CryAngel

И вообще, зачем эти авторы. Кто владелец файла в .git/objects — тот и автор.

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

У кода есть копирайт. От того, что я залил чей-то код указанным в топике способом, автором кода я не стал.

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

Ну а причём тут программисты и Git? Приведённый пример не является показателем чего либо.

Hose
()
Ответ на: комментарий от tailgunner

с точки зрения системы контроля версий (а раз упомянут git - то речь, видимо, о них) вполне себе да, ведь он не только файл создал, но еще его и закоммитил, так почему он не коммитер?

один человек написал, другой закомиттил.

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

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

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

Ты только не удивляйся, но бывает, что ещё и пушит не автор кода. И тот, кто пушит, тоже не факт что имеет копирайт на этот код :)

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

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

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

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

с точки зрения системы контроля версий (а раз упомянут git - то речь, видимо, о них) вполне себе да, ведь он не только файл создал, но еще его и закоммитил, так почему он не коммитер?

По-моему, из треда вполне понятно, что тот, кто создает файл, не обязательно его коммитит сам.

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

Нет.

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

Встречается и деление на троих: автор 1 просит автора 2 написать патч, тот его пишет но оформлять и возиться с ним ему лень и он отдаёт его автору 1, тот расставляет пробелы по культурному и коммитит в багтрекер, когда-нибудь его там замечают и включают в апстрим.

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

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

Да нет же, в большинстве OpenSource-проектов такое. Первый попавшийся:

* commit 5d63c06e753408e972b1f52308b9098054c56ae0 (HEAD, origin/master, origin/HEAD, master)
| Author:     Tobias Hunger <tobias.hunger@theqtcompany.com>
| AuthorDate: Wed May 13 10:02:48 2015 +0200
| Commit:     Alessandro Portale <alessandro.portale@theqtcompany.com>
| CommitDate: Fri May 15 15:42:31 2015 +0000
| 
|     Empty Qmake project wizard: Make .gitignore work again
|     
|     Change-Id: I590a88c4c66a0dbc879d2ba9198f273333fa35e5
|     Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
|
* commit f27aa09ac52e572119da6e8d86e38cb96bed2985
| Author:     Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
| AuthorDate: Fri May 15 14:14:18 2015 +0200
| Commit:     Orgad Shaneh <orgads@gmail.com>
| CommitDate: Fri May 15 14:20:47 2015 +0000
| 
|     C++: Fix crash on auto deduction with debug enabled
|     
|     By adding the expression document to the bindings object.
|     
|     Since ResolveExpression is always initialized with the context of a
|     TypeOfExpression object, the symbols and names in the expression
|     document will at least live as long as the most outer TypeOfExpression
|     object.
|     
|     Done-with: Orgad Shaneh <orgads@gmail.com>
|     Task-number: QTCREATORBUG-14253
|     Change-Id: Ia97c7401a2ada9a36113a04cf39e2283393421dd
|     Reviewed-by: Orgad Shaneh <orgads@gmail.com>
|     Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
EXL ★★★★★
()
Ответ на: комментарий от AP

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

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

Да, так делается, причём часто.

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

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

Больше того, некоторые (особенно пришедшие из Subversion) ленятся делать git am, а вместо этого прикладывают патч командой patch, а потом делают коммит и пуш, указывая автора изменений в комментарии к коммиту. Такое я тоже не раз видел.

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

В пейсбуке. В багзилле альтов меня не было уже лет пять.

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

Нердобугурт.

Deleted
()

У меня был один знакомый джава-программист (это была его должность), и я его спросил - какой системой контроля версий вы пользуетесь на работе? Он сказал - а что это? Я ему объяснил, он сказал - а да, у нас svn. Я ему говорю - это, наверное, сложно? Он - да нет, что ты, просто правой кнопкой мыши нажимаешь и добавляешь. Про гит он пока не знает.

Deleted
()

они оба коммитеры тащемта, в коллективной разработке нет такого понятия, как «автор».

x0r ★★★★★
()

Разошлись терминам рёбра перемывать... В этой ситуации высказываение «работает — не трогай» подходит как нельзя кстати.

KennyMinigun ★★★★★
()
Последнее исправление: KennyMinigun (всего исправлений: 1)
Ответ на: комментарий от Deleted

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

DELIRIUM ☆☆☆☆☆
()
Ответ на: комментарий от Deleted

Работал джава-программистом на 2-х работах, никакой системы контроля версий не использовалось, исходники тупо копировались на сервер через Total Commander. На текущем месте тоже не ничего не использовалось, лишь год назад перешли на Mercurial (по моему предложению).

З.Ы. О багтрекерах, системах управления проектами, юнит-тестах здесь и слыхом не слыхивали. Тестирование выполняется строго вручную (+ клиентами).

Den_Zurin
()
Ответ на: комментарий от DELIRIUM

Бесит блин. А я написал на джаве компилятор, умею интегрировать JNI и ассемблер, знаю все бай-коды JVM, но на работу не берут.

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

З.Ы. О багтрекерах, системах управления проектами, юнит-тестах здесь и слыхом не слыхивали. Тестирование выполняется строго вручную (+ клиентами).

Если заменить Java на Python, то ты в точности описал мою предыдущую работу :)

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

Странно. Юнит-тестирование же пошло как раз от скриптовых языков, как на них можно писать без тестов? Тем более у питона модуль для тестирования входит в стандартную библиотеку.

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