Git development
 help / color / mirror / Atom feed
* Suggestion: Real-time or Conflict-Reducing Collaboration Support for Specific Directories
@ 2026-05-28  5:15 胡锦
  2026-05-28  9:23 ` Christian Couder
  0 siblings, 1 reply; 2+ messages in thread
From: 胡锦 @ 2026-05-28  5:15 UTC (permalink / raw)
  To: git

Dear Git Team,

My name is Hujin, and I am an IT engineer from China. I have been using Git for more than 10 years.

First of all, I would like to express my appreciation for Git. In my experience, Git remains one of the best and most reliable version control systems in modern software development. It has played an important role in many projects I have worked on.

However, I have also encountered a recurring difficulty in daily use. For certain types of files, especially files under script directories or other frequently modified directories, conflicts happen quite often because updates are not synchronized in real time. In some project scenarios, multiple engineers may edit related scripts at the same time, and this can lead to repeated merge conflicts and extra coordination costs.

I wonder whether Git could provide, in future versions, some optional features similar to online collaborative documents, or directory-level collaboration mechanisms for specific files or folders. For example, users could enable special real-time update, lock, notification, or conflict-reduction behavior for selected directories such as scripts. This could help reduce conflicts and make Git even more convenient for teams working on highly shared files.

I understand that Git is designed as a distributed version control system, and such functionality may not be simple to implement. Still, I believe an optional feature in this direction could be very helpful for many engineering teams.

Thank you for your great work on Git. I look forward to hearing your thoughts.

Best regards,Hujin

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Suggestion: Real-time or Conflict-Reducing Collaboration Support for Specific Directories
  2026-05-28  5:15 Suggestion: Real-time or Conflict-Reducing Collaboration Support for Specific Directories 胡锦
@ 2026-05-28  9:23 ` Christian Couder
  0 siblings, 0 replies; 2+ messages in thread
From: Christian Couder @ 2026-05-28  9:23 UTC (permalink / raw)
  To: 胡锦; +Cc: git

Hi Hujin,

On Thu, May 28, 2026 at 7:16 AM 胡锦 <hujin2@sunline.cn> wrote:
>
> Dear Git Team,
>
> My name is Hujin, and I am an IT engineer from China. I have been using Git for more than 10 years.
>
> First of all, I would like to express my appreciation for Git. In my experience, Git remains one of the best and most reliable version control systems in modern software development. It has played an important role in many projects I have worked on.

Thanks.

> However, I have also encountered a recurring difficulty in daily use. For certain types of files, especially files under script directories or other frequently modified directories, conflicts happen quite often because updates are not synchronized in real time. In some project scenarios, multiple engineers may edit related scripts at the same time, and this can lead to repeated merge conflicts and extra coordination costs.
>
> I wonder whether Git could provide, in future versions, some optional features similar to online collaborative documents, or directory-level collaboration mechanisms for specific files or folders. For example, users could enable special real-time update, lock, notification, or conflict-reduction behavior for selected directories such as scripts. This could help reduce conflicts and make Git even more convenient for teams working on highly shared files.
>
> I understand that Git is designed as a distributed version control system, and such functionality may not be simple to implement. Still, I believe an optional feature in this direction could be very helpful for many engineering teams.

First I don't think it's Git's role to provide a full collaborative
editor, but you are right that it could provide mechanisms that could
help.

Then there are a number of features/mechanisms that other SCMs or
tools provide that could perhaps help:

- Jujutsu's working copy as a commit
(https://docs.jj-vcs.dev/latest/working-copy/)

It could help write a background script that constantly pushes and
rebases the current commit to a shared server as the user types,
mimicking a real-time sync.

Jujutsu's first-class conflicts could perhaps help too.

- Pijul's CRDTs and the Theory of Patches (https://pijul.org/manual/theory.html)

To seamlessly merge real-time changes without locking the file or
constantly throwing conflict errors, modern collaborative editors
abandon SCM snapshot merging entirely. Instead, they use one of two
mathematical models:

  - Operational Transformation (OT): Used by Google Docs.
  - Conflict-free Replicated Data Types (CRDTs): Used by newer tools
like Figma, Zed, and Apple Notes.

Pijul's underlying Rust library (libpijul) which already uses CRDTs
could be wrapped and adapted to fit a real-time context.

- Michael Haggerty’s `git-imerge`
(https://softwareswirl.blogspot.com/2013/05/git-imerge-practical-introduction.html)

I think this is the right way to simplify complex merges and rebases
as much as possible, which is useful if a lot of such operations have
to be made.

- CRDT AST (https://github.com/aaronmunsters/AST_CRDT)

- Automerge (https://automerge.org/docs/hello/)

- Yjs (https://github.com/yjs/yjs)

It would be indeed complex to implement any of these in Git.

The nice thing if someone would want to implement backend
collaborative editing features is that these days an AI could perhaps
resolve merge conflicts automatically. (But of course users should
have a way to override the AI's decisions if they think it's wrong.)
There are already a number of tools out there doing that for regular
development.

Best,
Christian.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-05-28  9:23 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-28  5:15 Suggestion: Real-time or Conflict-Reducing Collaboration Support for Specific Directories 胡锦
2026-05-28  9:23 ` Christian Couder

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox