mirror of
https://github.com/SkinnyMind/libgit2dart.git
synced 2025-05-05 04:39:07 -04:00
feat: upgrade libgit2
This commit is contained in:
parent
3bbcca3c75
commit
6a097c1841
92 changed files with 279 additions and 171 deletions
64
libgit2/headers/git2/sys/path.h
Normal file
64
libgit2/headers/git2/sys/path.h
Normal file
|
@ -0,0 +1,64 @@
|
|||
/*
|
||||
* Copyright (C) the libgit2 contributors. All rights reserved.
|
||||
*
|
||||
* This file is part of libgit2, distributed under the GNU GPL v2 with
|
||||
* a Linking Exception. For full terms see the included COPYING file.
|
||||
*/
|
||||
|
||||
#ifndef INCLUDE_sys_git_path_h__
|
||||
#define INCLUDE_sys_git_path_h__
|
||||
|
||||
#include "git2/common.h"
|
||||
|
||||
GIT_BEGIN_DECL
|
||||
|
||||
/**
|
||||
* The kinds of git-specific files we know about.
|
||||
*
|
||||
* The order needs to stay the same to not break the `gitfiles`
|
||||
* array in path.c
|
||||
*/
|
||||
typedef enum {
|
||||
/** Check for the .gitignore file */
|
||||
GIT_PATH_GITFILE_GITIGNORE,
|
||||
/** Check for the .gitmodules file */
|
||||
GIT_PATH_GITFILE_GITMODULES,
|
||||
/** Check for the .gitattributes file */
|
||||
GIT_PATH_GITFILE_GITATTRIBUTES
|
||||
} git_path_gitfile;
|
||||
|
||||
/**
|
||||
* The kinds of checks to perform according to which filesystem we are trying to
|
||||
* protect.
|
||||
*/
|
||||
typedef enum {
|
||||
/** Do both NTFS- and HFS-specific checks */
|
||||
GIT_PATH_FS_GENERIC,
|
||||
/** Do NTFS-specific checks only */
|
||||
GIT_PATH_FS_NTFS,
|
||||
/** Do HFS-specific checks only */
|
||||
GIT_PATH_FS_HFS
|
||||
} git_path_fs;
|
||||
|
||||
/**
|
||||
* Check whether a path component corresponds to a .git$SUFFIX
|
||||
* file.
|
||||
*
|
||||
* As some filesystems do special things to filenames when
|
||||
* writing files to disk, you cannot always do a plain string
|
||||
* comparison to verify whether a file name matches an expected
|
||||
* path or not. This function can do the comparison for you,
|
||||
* depending on the filesystem you're on.
|
||||
*
|
||||
* @param path the path component to check
|
||||
* @param pathlen the length of `path` that is to be checked
|
||||
* @param gitfile which file to check against
|
||||
* @param fs which filesystem-specific checks to use
|
||||
* @return 0 in case the file does not match, a positive value if
|
||||
* it does; -1 in case of an error
|
||||
*/
|
||||
GIT_EXTERN(int) git_path_is_gitfile(const char *path, size_t pathlen, git_path_gitfile gitfile, git_path_fs fs);
|
||||
|
||||
GIT_END_DECL
|
||||
|
||||
#endif /* INCLUDE_sys_git_path */
|
Loading…
Add table
Add a link
Reference in a new issue