Allocated, on-going, priority ... labels
As we are not using a trello-like board (not available in gitlab), we have to play with labels to obtain a similar effect. I suggest using "assignee" to "book" a task, which means you intend to work on this task now or in the future. Then, label a task as "on-going" if you are effectively working on the task. It is intended that you have only ONE task on-going, and that results about this task should be delivered at the end of the day. Every task should be feasible in 10 hours of work. Otherwise, the task should be subdivided. In that case, by hierarchical: keep the task open, and open subtasks that should be referred to the initial task. If for some reasons you are not able to deliver the work by the end of the day, commit it to a dedicated branch topic/ongoing_taskid . The last commit may be labeled as partial with the initial keyword [PARTIAL]. Once the task done, the commits may be refactored and the branch topic/ongoing_taskid should be destroyed. In this case, it is acceptable that the the last commit contains craps, as it is only used to backup. Providing partial commit is useful in case of delay (personal latency for example) that allows coworker to take over the lead on an ongoing task.
In case you open such a temporary branch, dont hesitate to comment it in the issue thread.