Merge branch 'jc/ident'
* jc/ident: Make "empty ident" error message a bit more helpful. Merge branch 'jc/topo' Merge branch 'jc/rebase-limit' gitview: typofix git-svn: remove files from the index before adding/updatingmaint
commit
9c92f563be
|
@ -580,13 +580,12 @@ sub svn_info {
|
|||
sub sys { system(@_) == 0 or croak $? }
|
||||
|
||||
sub git_addremove {
|
||||
system( "git-ls-files -z --others ".
|
||||
system( "git-diff-files --name-only -z ".
|
||||
" | git-update-index --remove -z --stdin; ".
|
||||
"git-ls-files -z --others ".
|
||||
"'--exclude-from=$GIT_DIR/$GIT_SVN/info/exclude'".
|
||||
"| git-update-index --add -z --stdin; ".
|
||||
"git-ls-files -z --deleted ".
|
||||
"| git-update-index --remove -z --stdin; ".
|
||||
"git-ls-files -z --modified".
|
||||
"| git-update-index -z --stdin") == 0 or croak $?
|
||||
" | git-update-index --add -z --stdin; "
|
||||
) == 0 or croak $?
|
||||
}
|
||||
|
||||
sub s_to_file {
|
||||
|
|
|
@ -32,7 +32,7 @@ EXAMPLES
|
|||
Show as the changes since version v2.6.12 that changed any file in the include/scsi
|
||||
or drivers/scsi subdirectories
|
||||
|
||||
gitk --since=2.weeks.ago
|
||||
gitview --since=2.weeks.ago
|
||||
Show the changes during the last two weeks
|
||||
|
||||
|
||||
|
|
14
ident.c
14
ident.c
|
@ -46,6 +46,15 @@ static void copy_gecos(struct passwd *w, char *name, int sz)
|
|||
|
||||
}
|
||||
|
||||
static const char au_env[] = "GIT_AUTHOR_NAME";
|
||||
static const char co_env[] = "GIT_COMMITTER_NAME";
|
||||
static const char env_hint[] =
|
||||
"\n*** Environment problem:\n"
|
||||
"*** Your name cannot be determined from your system services (gecos).\n"
|
||||
"*** You would need to set %s and %s\n"
|
||||
"*** environment variables; otherwise you won't be able to perform\n"
|
||||
"*** certain operations because of \"empty ident\" errors.\n\n";
|
||||
|
||||
int setup_ident(void)
|
||||
{
|
||||
int len;
|
||||
|
@ -57,6 +66,11 @@ int setup_ident(void)
|
|||
/* Get the name ("gecos") */
|
||||
copy_gecos(pw, git_default_name, sizeof(git_default_name));
|
||||
|
||||
if (!*git_default_name) {
|
||||
if (!getenv(au_env) || !getenv(co_env))
|
||||
fprintf(stderr, env_hint, au_env, co_env);
|
||||
}
|
||||
|
||||
/* Make up a fake email address (name + '@' + hostname [+ '.' + domainname]) */
|
||||
len = strlen(pw->pw_name);
|
||||
if (len > sizeof(git_default_email)/2)
|
||||
|
|
Loading…
Reference in New Issue