git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 0/7] fsmonitor: completing a stale patch that Implements fsmonitor for Linux

From
MGmarzi via GitGitGadget <gitgitgadget@gmail.com>
Date
Feb 15, 2024, 10:29 UTC
Message-ID
<pull.1667.git.git.1707992978.gitgitgadget@gmail.com>

The goal in the original pull is to deliver fsmonitor for Linux that works similar to fsmonitor for Windows and Mac OS.

The original stale patch : https://github.com/git/git/pull/1352

This patch set builds upon previous work for done for Windows and Mac OS to implement a fsmonitor back-end for Linux based on the Linux inotify API. inotify differs significantly from the equivalent Windows and Mac OS APIs in that a watch must be registered for every directory of interest (rather than a singular watch at the root of the directory tree) and special care must be taken to handle directory renames correctly.

More information about inotify: https://man7.org/linux/man-pages/man7/inotify.7.html

Eric DeCosta (6):
  fsmonitor: rebase with master
  fsmonitor: determine if filesystem is local or remote
  fsmonitor: implement filesystem change listener for Linux
  fsmonitor: enable fsmonitor for Linux
  fsmonitor: test updates
  fsmonitor: update doc for Linux
marzi.esipreh (1):
  fsmonitor: addressed comments for patch 1352
 Documentation/config/fsmonitor--daemon.txt |   4 +-
 Documentation/git-fsmonitor--daemon.txt    |  26 +-
 Makefile                                   |   4 +
 compat/fsmonitor/fsm-health-linux.c        |  24 +
 compat/fsmonitor/fsm-ipc-darwin.c          |  57 +-
 compat/fsmonitor/fsm-ipc-linux.c           |   1 +
 compat/fsmonitor/fsm-ipc-unix.c            |  55 ++
 compat/fsmonitor/fsm-listen-linux.c        | 678 +++++++++++++++++++++
 compat/fsmonitor/fsm-path-utils-linux.c    | 196 ++++++
 compat/fsmonitor/fsm-path-utils-linux.h    |  91 +++
 compat/fsmonitor/fsm-settings-darwin.c     |  64 +-
 compat/fsmonitor/fsm-settings-linux.c      |   1 +
 compat/fsmonitor/fsm-settings-unix.c       |  64 ++
 config.mak.uname                           |  11 +
 contrib/buildsystems/CMakeLists.txt        |  11 +-
 t/t7527-builtin-fsmonitor.sh               | 138 ++++-
 16 files changed, 1262 insertions(+), 163 deletions(-)
 create mode 100644 compat/fsmonitor/fsm-health-linux.c
 create mode 100644 compat/fsmonitor/fsm-ipc-linux.c
 create mode 100644 compat/fsmonitor/fsm-ipc-unix.c
 create mode 100644 compat/fsmonitor/fsm-listen-linux.c
 create mode 100644 compat/fsmonitor/fsm-path-utils-linux.c
 create mode 100644 compat/fsmonitor/fsm-path-utils-linux.h
 create mode 100644 compat/fsmonitor/fsm-settings-linux.c
 create mode 100644 compat/fsmonitor/fsm-settings-unix.c
base-commit: 4fc51f00ef18d2c0174ab2fd39d0ee473fd144bd
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1667%2Fmaryis%2Ffsmonitor_linux-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1667/maryis/fsmonitor_linux-v1
Pull-Request: https://github.com/git/git/pull/1667
-- 
gitgitgadget
Next: Eric DeCosta via GitGitGadget
Message 1 of 14 in “fsmonitor: completing a stale patch that Implements fsmonitor for Linux”
  1. 0/7 fsmonitor: completing a stale patch that Implements fsmonitor for Linuxmarzi via GitGitGadget, Feb 15, 2024
  2. 1/7 fsmonitor: rebase with masterEric DeCosta via GitGitGadget, Feb 15, 2024
  3. Patrick SteinhardtFeb 15, 2024
  4. 2/7 fsmonitor: determine if filesystem is local or remoteEric DeCosta via GitGitGadget, Feb 15, 2024
  5. Jean-Noël AvilaFeb 15, 2024
  6. Patrick SteinhardtFeb 15, 2024
  7. 3/7 fsmonitor: implement filesystem change listener for LinuxEric DeCosta via GitGitGadget, Feb 15, 2024
  8. Patrick SteinhardtFeb 15, 2024
  9. 4/7 fsmonitor: enable fsmonitor for LinuxEric DeCosta via GitGitGadget, Feb 15, 2024
  10. 5/7 fsmonitor: test updatesEric DeCosta via GitGitGadget, Feb 15, 2024
  11. 6/7 fsmonitor: update doc for LinuxEric DeCosta via GitGitGadget, Feb 15, 2024
  12. 7/7 fsmonitor: addressed comments for patch 1352marzi.esipreh via GitGitGadget, Feb 15, 2024
  13. Patrick SteinhardtFeb 15, 2024
  14. 0/7 fsmonitor: completing a stale patch that Implements fsmonitor for LinuxManoraj K, Jan 31, 2025

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.