git 无法添加设备文件?

git 无法添加设备文件?

git无法提交设备文件?在Linux系统下。

例如:

git clone [email protected]:/blah.git
cd blah 
sudo cp -af /dev/ttyS0 .
git add .
git commit

git 消息:

# On branch master
nothing to commit (working directory clean)

ls -ashl结果:

   0 crw-rw----  1 c2h2 c2h2 4, 64 Jun 24 14:23 ttyS0

可以这样做吗?

答案1

不,Git 根本不会跟踪设备文件(目前)。以下是来自的评论dir.c读取目录递归(v1.7.8.5)函数,当您执行以下操作时使用git add .

 * Read a directory tree. We currently ignore anything but
 * directories, regular files and symlinks. That's because git
 * doesn't handle them at all yet. Maybe that will change some
 * day.

Git 跟踪内容,而不是文件。因此,尝试让它跟踪设备文件并不合适 - 它们实际上没有传统意义上的内容。

一种可行的方法是创建一个脚本,用于创建/“安装”应用程序/项目所需的设备文件(包括 fifo 或您可能需要的其他文件)。Git 可以非常有效地跟踪这一点,并且对于安装程序(或对于使用您的树的其他人)来说,这是一种方便的形式。

相关内容