We are working using LeSS methodology. Area is divided into feature teams, within a team we split items into task.
I (developer) and another one worked on the same item, we splitted it into tasks, and I gave him the option of choosing that tasks to do. That person for no reason started to do (repeat my tasks), on my question on this, he told that he wanted hands on on overall picture. We agreed that we do the work on the branch that I created. But the person made his branch to put his code to solve my task. After I did my task I committed it to the agreed branch, and as we need to have item to be done, has solved partially task of another person, on which he haven’t worked, And made the commit to the branch, after that in branch is 90% of item.
While I was out of office for 3 days, that person created another branch, for build fix (build was broken by another team). And put my changes manually to the new branch (just copied the files I created), and did the rest 10% of work in that branch. He did it in a way, that only his commits are in history, and as he just moved my files (not git move of course) all history of my commits vanished. So it looks like he did all the work. And he had merged that branch into master.
My arguments to him: Why should we fix build, when commit of another team has broken it? We have our tasks, on which we agreed to do. And this thing of branch creation to fix the build, looks more for me like he did that, to intentionally steal my work.
On which he told that haven’t got time to merge the branch on which we agreed to do the work, and on which I did 90% of total work, to a newly created brunch fix-build
And that we are working for the same aim, as a team, so history of commits doesn’t matter for him, as in scrum there are no individuals, but there is the team.
My arguments: I put my best efforts into code, and I want to be associated with the work I do. As we are working for the contractor I want visibility, that my efforts are recognized and seen. So that is why this situation for me is a code stealing.
Update: added this info to give more details, to help understand the picture better:
- the branch is technically visible to everyone. But the way we pass done items, to the client is via pull request, and in it there is only fix-build branch. So only it is exposed explicitly to the customer, and I see no reason why they should search for the initial branch with my code in that case. That person intentionally misused git, in my opinion. He haven’t merged my work, but manually moved my files and did that under his commit and his name, all my commits history was erased
- The log of the branch he sent for review to a customer: 4 his commits the first, one is all my work under his name, it appears in history like he created all files and filled them with the contents Second merge with master 3-4 other 10% of the item
- The person is a senior developer, so I would expect from such person to know basic of git, that we are using and to be able work under own guidance
- Found a good amount idea in comments: the real question is for me not code stealing, but credit stealing