mirror of
https://git.proxmox.com/git/libgit2
synced 2025-05-02 14:04:30 +00:00
examples: general: extract function demonstrating config files
This commit is contained in:
parent
176d58bad4
commit
986913f45b
@ -42,6 +42,8 @@
|
|||||||
#include <git2.h>
|
#include <git2.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
|
static void config_files(const char *repo_path);
|
||||||
|
|
||||||
// Almost all libgit2 functions return 0 on success or negative on error.
|
// Almost all libgit2 functions return 0 on success or negative on error.
|
||||||
// This is not production quality error checking, but should be sufficient
|
// This is not production quality error checking, but should be sufficient
|
||||||
// as an example.
|
// as an example.
|
||||||
@ -498,22 +500,34 @@ int main (int argc, char** argv)
|
|||||||
|
|
||||||
git_strarray_free(&ref_list);
|
git_strarray_free(&ref_list);
|
||||||
|
|
||||||
// ### Config Files
|
config_files(repo_path);
|
||||||
|
|
||||||
// The [config API][config] allows you to list and updatee config values
|
// Finally, when you're done with the repository, you can free it as well.
|
||||||
// in any of the accessible config file locations (system, global, local).
|
git_repository_free(repo);
|
||||||
//
|
|
||||||
// [config]: http://libgit2.github.com/libgit2/#HEAD/group/config
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ### Config Files
|
||||||
|
*
|
||||||
|
* The [config API][config] allows you to list and updatee config values
|
||||||
|
* in any of the accessible config file locations (system, global, local).
|
||||||
|
*
|
||||||
|
* [config]: http://libgit2.github.com/libgit2/#HEAD/group/config
|
||||||
|
*/
|
||||||
|
static void config_files(const char *repo_path)
|
||||||
|
{
|
||||||
|
const char *email;
|
||||||
|
char config_path[256];
|
||||||
|
int32_t j;
|
||||||
|
git_config *cfg;
|
||||||
|
|
||||||
printf("\n*Config Listing*\n");
|
printf("\n*Config Listing*\n");
|
||||||
|
|
||||||
const char *email;
|
/**
|
||||||
int32_t j;
|
* Open a config object so we can read global values from it.
|
||||||
|
*/
|
||||||
git_config *cfg;
|
|
||||||
|
|
||||||
// Open a config object so we can read global values from it.
|
|
||||||
char config_path[256];
|
|
||||||
sprintf(config_path, "%s/config", repo_path);
|
sprintf(config_path, "%s/config", repo_path);
|
||||||
check_error(git_config_open_ondisk(&cfg, config_path), "opening config");
|
check_error(git_config_open_ondisk(&cfg, config_path), "opening config");
|
||||||
|
|
||||||
@ -522,9 +536,4 @@ int main (int argc, char** argv)
|
|||||||
|
|
||||||
git_config_get_string(&email, cfg, "user.email");
|
git_config_get_string(&email, cfg, "user.email");
|
||||||
printf("Email: %s\n", email);
|
printf("Email: %s\n", email);
|
||||||
|
|
||||||
// Finally, when you're done with the repository, you can free it as well.
|
|
||||||
git_repository_free(repo);
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user