Vivasoft-logo

ā§­.ā§Ģ āĻ—āĻŋāϟ āϟ⧁āϞāϏ – āϏāĻžāĻ°ā§āϚāĻŋāĻ‚

āϏāĻžāĻ°ā§āϚāĻŋāĻ‚

āϝ⧇āϕ⧋āύ āφāĻ•āĻžāϰ⧇āϰ āϕ⧋āĻĄāĻŦ⧇āϏ⧇āϰ āϏāĻžāĻĨ⧇, āφāĻĒāύāĻžāϕ⧇ āĻĒā§āϰāĻžāϝāĻŧāĻļāχ āĻāĻ•āϟāĻŋ āĻĢāĻžāĻ‚āĻļāύāϕ⧇ āϕ⧋āĻĨāĻžāϝāĻŧ āĻ•āϞ āĻŦāĻž āϏāĻ‚āĻœā§āĻžāĻžāϝāĻŧāĻŋāϤ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇, āϤāĻž āϖ⧁āρāĻœā§‡ āĻŦ⧇āϰ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇ āĻŦāĻž āĻāĻ•āϟāĻŋ āĻŽā§‡āĻĨāĻĄā§‡āϰ āχāϤāĻŋāĻšāĻžāϏ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤ āĻ—āĻŋāϟ āϕ⧋āĻĄāϟāĻŋ āĻāĻŦāĻ‚ āĻ•āĻŽāĻŋāϟāϗ⧁āϞ⧋ āĻĻ⧇āĻ–āĻžāϰ āϜāĻ¨ā§āϝ āĻ•āϝāĻŧ⧇āĻ•āϟāĻŋ āĻĻāϰāĻ•āĻžāϰ⧀ āϟ⧁āϞ āϏāϰāĻŦāϰāĻžāĻš āĻ•āϰ⧇ āĻāĻŦāĻ‚ āĻĻā§āϰ⧁āϤ āĻāĻŦāĻ‚ āϏāĻšāĻœā§‡ āĻāϰ āĻĄāĻžāϟāĻžāĻŦ⧇āϏ⧇ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻ•āϰ⧇āĨ¤ āφāĻŽāϰāĻž āϤāĻžāĻĻ⧇āϰ āĻ•āϝāĻŧ⧇āĻ•āϟāĻŋāϰ āĻŽāĻ§ā§āϝ āĻĻāĻŋā§Ÿā§‡ āϝāĻžāĻŦāĨ¤

āĻ—āĻŋāϟ āĻ—ā§āϰ⧇āĻĒ 

āĻ—āĻŋāϟ grep āύāĻžāĻŽāĻ• āĻāĻ•āϟāĻŋ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻĒāϰāĻŋāϚ⧟ āĻ•āϰāĻŋā§Ÿā§‡ āĻĻā§‡ā§Ÿ āϝāĻž āφāĻĒāύāĻžāϕ⧇ āϝ⧇āϕ⧋āύ āĻ•āĻŽāĻŋāĻŸā§‡āĻĄ āĻŸā§āϰāĻŋ, āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻŋāĻ‚ āĻĄāĻŋāϰ⧇āĻ•ā§āϟāϰāĻŋ, āĻāĻŽāύāĻ•āĻŋ āĻāĻ•āϟāĻŋ āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚ āĻŦāĻž āϰ⧇āϗ⧁āϞāĻžāϰ āĻāĻ•ā§āϏāĻĒā§āϰ⧇āĻļāύ⧇āϰ āχāύāĻĄā§‡āĻ•ā§āϏ⧇āϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āϏāĻšāĻœā§‡āχ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āϰāϤ⧇ āĻĻ⧇āϝāĻŧāĨ¤ āĻ…āύ⧁āϏāϰāĻŖ āĻ•āϰāĻž āωāĻĻāĻžāĻšāϰāĻŖāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ, āφāĻŽāϰāĻž āĻ—āĻŋāĻŸā§‡āϰ āύāĻŋāĻœā§‡āϰ āϜāĻ¨ā§āϝ⧇āχ āϏ⧋āĻ°ā§āϏ āϕ⧋āĻĄā§‡āϰ āĻŽāĻ§ā§āϝ⧇ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āϰāĻŦāĨ¤

āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻ­āĻžāĻŦ⧇āχ, git grep āφāĻĒāύāĻžāϰ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻŋāĻ‚ āĻĄāĻŋāϰ⧇āĻ•ā§āϟāϰāĻŋāϰ āĻĢāĻžāχāϞāϗ⧁āϞāĻŋ āĻĻ⧇āĻ–āĻŦ⧇āĨ¤ āĻĒā§āϰāĻĨāĻŽ āĻĒā§āϰāĻ•āϰāĻŖ āĻšāĻŋāϏāĻžāĻŦ⧇, āφāĻĒāύāĻŋ āĻ—āĻŋāϟ āĻŽāĻŋāϞ āϖ⧁āρāĻœā§‡ āĻĒ⧇āϝāĻŧ⧇āϛ⧇ āĻāĻŽāύ āϞāĻžāχāύ āύāĻŽā§āĻŦāϰāϗ⧁āϞāĻŋ āĻŽā§āĻĻā§āϰāĻŖ āĻ•āϰāϤ⧇ -n āĻŦāĻž –line-number āĻ…āĻĒāĻļāύāϗ⧁āϞāĻŋāϰ āĻŽāĻ§ā§āϝ⧇ āĻāĻ•āϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύ:

				
					$ git grep -n gmtime_r
compat/gmtime.c:3:#undef gmtime_r
compat/gmtime.c:8:      return git_gmtime_r(timep, &result);
compat/gmtime.c:11:struct tm *git_gmtime_r(const time_t *timep, struct tm *result)
compat/gmtime.c:16:     ret = gmtime_r(timep, result);
compat/mingw.c:826:struct tm *gmtime_r(const time_t *timep, struct tm *result)
compat/mingw.h:206:struct tm *gmtime_r(const time_t *timep, struct tm *result);
date.c:482:             if (gmtime_r(&now, &now_tm))
date.c:545:             if (gmtime_r(&time, tm)) {
date.c:758:             /* gmtime_r() in match_digit() may have clobbered it */
git-compat-util.h:1138:struct tm *git_gmtime_r(const time_t *, struct tm *);
git-compat-util.h:1140:#define gmtime_r git_gmtime_r
				
			

āωāĻĒāϰ⧇ āĻĻ⧇āĻ–āĻžāύ⧋ āĻŦ⧇āϏāĻŋāĻ• āϏāĻžāĻ°ā§āϚāĻŋāĻ‚ āĻ›āĻžāĻĄāĻŧāĻžāĻ“, git grep āĻ…āĻ¨ā§āϝāĻžāĻ¨ā§āϝ āφāĻ•āĻ°ā§āώāĻŖā§€āϝāĻŧ āĻ…āĻĒāĻļāύāϗ⧁āϞāĻŋāϰ āφāϧāĻŋāĻ•ā§āϝ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āϏāĻŽāĻ¸ā§āϤ āĻŽāĻŋāϞ āĻĒā§āϰāĻŋāĻ¨ā§āϟ āĻ•āϰāĻžāϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤ⧇, āφāĻĒāύāĻŋ git grep-āĻ•ā§‡Â  -c āĻŦāĻž –count āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ⧇āϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡āχ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āϕ⧋āύ āĻĢāĻžāχāϞ⧇ āϏāĻžāĻ°ā§āϚ āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚ āϰāϝāĻŧ⧇āϛ⧇ āĻāĻŦāĻ‚ āĻĒā§āϰāϤāĻŋāϟāĻŋ āĻĢāĻžāχāϞ⧇ āĻ•āϤāϗ⧁āϞāĻŋ āĻŽāĻŋāϞ āϰāϝāĻŧ⧇āϛ⧇ āϤāĻž āĻĻ⧇āĻ–āĻŋāϝāĻŧ⧇, āφāωāϟāĻĒ⧁āϟ āϏāĻ‚āĻ•ā§āώāĻŋāĻĒā§āϤ āĻ•āϰāϤ⧇ āĻŦāϞāϤ⧇ āĻĒāĻžāϰ⧇āύ:

				
					$ git grep --count gmtime_r
compat/gmtime.c:4
compat/mingw.c:1
compat/mingw.h:1
date.c:3
git-compat-util.h:2
				
			

āφāĻĒāύāĻŋ āϝāĻĻāĻŋ āĻāĻ•āϟāĻŋ āϏāĻžāĻ°ā§āϚ āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚ āĻāϰ āĻĒā§āϰāϏāĻ™ā§āϗ⧇ āφāĻ—ā§āϰāĻšā§€ āĻšāύ, āϤāĻžāĻšāϞ⧇ āφāĻĒāύāĻŋ -p āĻŦāĻž –show-function āĻ…āĻĒāĻļāύāϗ⧁āϞāĻŋāϰ āϝ⧇āϕ⧋āύ⧋ āĻāĻ•āϟāĻŋāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āĻĒā§āϰāϤāĻŋāϟāĻŋ āĻŽā§āϝāĻžāϚāĻŋāĻ‚ āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚ āĻāϰ āϜāĻ¨ā§āϝ āĻāύāĻ•ā§āϞ⧋āϏāĻŋāĻ‚ āĻŽā§‡āĻĨāĻĄ āĻŦāĻž āĻĢāĻžāĻ‚āĻļāύ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύ:

				
					$ git grep -p gmtime_r *.c
date.c=static int match_multi_number(timestamp_t num, char c, const char *date,
date.c:         if (gmtime_r(&now, &now_tm))
date.c=static int match_digit(const char *date, struct tm *tm, int *offset, int *tm_gmt)
date.c:         if (gmtime_r(&time, tm)) {
date.c=int parse_date_basic(const char *date, timestamp_t *timestamp, int *offset)
date.c:         /* gmtime_r() in match_digit() may have clobbered it */
				
			

āφāĻĒāύāĻŋ āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāĻšā§āϛ⧇āύ, date.c āĻĢāĻžāχāϞ⧇āϰ match_multi_number āĻāĻŦāĻ‚ match_digit āωāĻ­āϝāĻŧ āĻĢāĻžāĻ‚āĻļāύ āĻĨ⧇āϕ⧇ gmtime_r āϰ⧁āϟāĻŋāύ āĻ•āϞ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āĻ›ā§‡Â  ( āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āϤ⧃āϤ⧀āϝāĻŧ āĻŽā§āϝāĻžāϚāϟāĻŋ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻāĻ•āϟāĻŋ āĻŽāĻ¨ā§āϤāĻŦā§āϝ⧇ āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚āϕ⧇ āĻĒā§āϰāϤāĻŋāύāĻŋāϧāĻŋāĻ¤ā§āĻŦ āĻ•āϰ⧇ )āĨ¤

 

āφāĻĒāύāĻŋ –and āĻĢā§āĻ˛ā§āϝāĻžāϗ⧇āϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚āϗ⧁āϞāĻŋāϰ āϜāϟāĻŋāϞ āĻ•āĻŽā§āĻŦāĻŋāύ⧇āĻļāĻžāύāϗ⧁āϞāĻŋāϕ⧇āĻ“ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύ, āϝāĻž āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰ⧇ āϝ⧇ āĻŸā§‡āĻ•ā§āϏāĻŸā§‡āϰ āĻāĻ•āχ āϞāĻžāχāύ⧇ āĻāĻ•āĻžāϧāĻŋāĻ• āĻŽāĻŋāϞ āϘāϟāϤ⧇āχ āĻšāĻŦ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖ āĻ¸ā§āĻŦāϰ⧂āĻĒ, āφāϏ⧁āύ āĻāĻŽāύ āϝ⧇āϕ⧋āύ āϞāĻžāχāύ⧇āϰ āϏāĻ¨ā§āϧāĻžāύ āĻ•āϰāĻž āϝāĻžāĻ• āϝāĻž āĻāĻ•āϟāĻŋ āĻ•āύāĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āϟāϕ⧇ āϏāĻ‚āĻœā§āĻžāĻžāϝāĻŧāĻŋāϤ āĻ•āϰ⧇, āϝ⧇ āĻ•āĻ¨ā§āϏāĻŸā§āϝāĻžāĻ¨ā§āϟāϟāĻŋāϰ āύāĻžāĻŽāϟāĻŋ āϏāĻžāĻŦāĻ¸ā§āĻŸā§āϰāĻŋāĻ‚ “LINK” āĻŦāĻž “BUF_MAX” āĻāϰ āĻŽāĻ§ā§āϝ⧇ āĻāĻ•āϟāĻŋ āϧāĻžāϰāĻŖ āĻ•āϰ⧇, āĻŦāĻŋāĻļ⧇āώāϤ v1.8.0 āĻŸā§āϝāĻžāĻ— āĻĻā§āĻŦāĻžāϰāĻž āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻŋāϤ āĻ—āĻŋāϟ āϕ⧋āĻĄāĻŦ⧇āϏ⧇āϰ āĻāĻ•āϟāĻŋ āĻĒ⧁āϰāĻžāύ⧋ āϏāĻ‚āĻ¸ā§āĻ•āϰāϪ⧇āĨ¤ ( āφāĻŽāϰāĻž –break āĻāĻŦāĻ‚ –heading āĻ…āĻĒāĻļāύ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻŦā§‹ āϝāĻž āφāωāϟāĻĒ⧁āϟāϕ⧇ āφāϰāĻ“ āĻĒāĻžāĻ āϝ⧋āĻ—ā§āϝ āĻŦāĻŋāĻ¨ā§āϝāĻžāϏ⧇ āĻŦāĻŋāĻ­āĻ•ā§āϤ āĻ•āϰāϤ⧇ āϏāĻžāĻšāĻžāĻ¯ā§āϝ āĻ•āϰ⧇ ):

				
					$ git grep --break --heading \
    -n -e '#define' --and \( -e LINK -e BUF_MAX \) v1.8.0
v1.8.0:builtin/index-pack.c
62:#define FLAG_LINK (1u<<20)

v1.8.0:cache.h
73:#define S_IFGITLINK  0160000
74:#define S_ISGITLINK(m)       (((m) & S_IFMT) == S_IFGITLINK)

v1.8.0:environment.c
54:#define OBJECT_CREATION_MODE OBJECT_CREATION_USES_HARDLINKS

v1.8.0:strbuf.c
326:#define STRBUF_MAXLINK (2*PATH_MAX)

v1.8.0:symlinks.c
53:#define FL_SYMLINK  (1 << 2)

v1.8.0:zlib.c
30:/* #define ZLIB_BUF_MAX ((uInt)-1) */
31:#define ZLIB_BUF_MAX ((uInt) 1024 * 1024 * 1024) /* 1GB */
				
			

āϏāĻžāϧāĻžāϰāĻŖ āϏāĻžāĻ°ā§āϚāĻŋāĻ‚ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āϝ⧇āĻŽāύ grep āĻāĻŦāĻ‚ ack āĻāϰ āϤ⧁āϞāύāĻžāϝāĻŧ git grep āĻ•āĻŽāĻžāĻ¨ā§āĻĄā§‡āϰ āĻ•āĻŋāϛ⧁ āϏ⧁āĻŦāĻŋāϧāĻž āϰāϝāĻŧ⧇āϛ⧇āĨ¤ āĻĒā§āϰāĻĨāĻŽāϟāĻŋ āĻš’āϞ āĻāϟāĻŋ āϏāĻ¤ā§āϝāĻŋāχ āĻĻā§āϰ⧁āϤ, āĻĻā§āĻŦāĻŋāϤ⧀āϝāĻŧāϟāĻŋ āĻšāϞ āφāĻĒāύāĻŋ āĻ—āĻŋāϟ-āĻāϰ āϕ⧇āĻŦāϞāĻŽāĻžāĻ¤ā§āϰ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻŋāĻ‚ āĻĄāĻŋāϰ⧇āĻ•ā§āϟāϰāĻŋ āύāϝāĻŧ, āĻŦāϰāĻ‚ āϝ⧇āϕ⧋āύ āĻŸā§āϰāĻŋāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤ āφāĻŽāϰāĻž āωāĻĒāϰ⧇āϰ āωāĻĻāĻžāĻšāϰāϪ⧇ āϝ⧇āĻŽāύ āĻĻ⧇āϖ⧇āĻ›āĻŋ, āφāĻŽāϰāĻž āĻŦāĻ°ā§āϤāĻŽāĻžāύ⧇ āĻšā§‡āĻ• āφāωāϟ āĻ•āϰāĻž āϏāĻ‚āĻ¸ā§āĻ•āϰāĻŖāϟāĻŋ āύāϝāĻŧ, āĻŦāϰāĻ‚ āĻ—āĻŋāϟ āϏ⧋āĻ°ā§āϏ āϕ⧋āĻĄā§‡āϰ āĻāĻ•āϟāĻŋ āĻĒ⧁āϰāĻžāύ⧋ āϏāĻ‚āĻ¸ā§āĻ•āϰāϪ⧇ āϟāĻžāĻ°ā§āĻŽāϗ⧁āϞāĻŋ āĻĻ⧇āϖ⧇āĻ›āĻŋāĨ¤

 

āĻ—āĻŋāϟ āϞāĻ— āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ

 

āϏāĻŽā§āĻ­āĻŦāϤ āφāĻĒāύāĻŋ āĻāĻ•āϟāĻŋ āϟāĻžāĻ°ā§āĻŽ āϕ⧋āĻĨāĻžāϝāĻŧ āφāϛ⧇ āϤāĻž āϖ⧁āρāϜāϛ⧇āύ āύāĻž, āĻ•āĻŋāĻ¨ā§āϤ⧁ āĻ•āĻ–āύ āĻāϟāĻŋ āĻ…āϧāĻŋāĻˇā§āϟ āĻŦāĻž āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻŋāϤ āĻšāϝāĻŧ⧇āĻ›āĻŋāϞ, āϤāĻž āϖ⧁āρāϜāϛ⧇āύāĨ¤ git log āĻ•āĻŽāĻžāĻ¨ā§āĻĄā§‡ āϤāĻžāĻĻ⧇āϰ āĻŦāĻžāĻ°ā§āϤāĻžāϰ āĻŦāĻŋāώāϝāĻŧāĻŦāĻ¸ā§āϤ⧁ āĻŦāĻž āĻāĻŽāύāĻ•āĻŋ āϤāĻžāϰāĻž āϝ⧇ āĻ­āĻŋāĻ¨ā§āύāϤāĻž āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻŋāϤ āĻ•āϰ⧇, āϤāĻžāϰ āĻŦāĻŋāώāϝāĻŧāĻŦāĻ¸ā§āϤ⧁ āĻĻā§āĻŦāĻžāϰāĻž āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āĻŽāĻŋāϟāϗ⧁āϞāĻŋāϕ⧇ āϖ⧁āρāĻœā§‡ āĻŦ⧇āϰ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻŦ⧇āĻļ āĻ•āϝāĻŧ⧇āĻ•āϟāĻŋ āĻļāĻ•ā§āϤāĻŋāĻļāĻžāϞ⧀ āϏāϰāĻžā§āϜāĻžāĻŽ āϰāϝāĻŧ⧇āϛ⧇āĨ¤

 

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āϝāĻĻāĻŋ āφāĻŽāϰāĻž āϜāĻžāύāϤ⧇ āϚāĻžāχ āϝ⧇ ZLIB_BUF_MAX āĻ•āύāĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āϟāϟāĻŋ āφāϏāϞ⧇ āĻ•āĻ–āύ āĻ…āϰāĻŋāϜāĻŋāύāĻžāϞāĻŋ  āωāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻŋāϤ āĻšāϝāĻŧ⧇āĻ›āĻŋāϞ, āφāĻŽāϰāĻž -S āĻ…āĻĒāĻļāύāϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻĒāĻžāϰāĻŋ  ( āϏāϚāϰāĻžāϚāϰ āĻāϟāĻŋāϕ⧇ āĻ—āĻŋāϟ “āĻĒāĻŋāĻ•ā§āϝāĻžāĻ•ā§āϏ” āĻ…āĻĒāĻļāύ āĻšāĻŋāϏāĻžāĻŦ⧇ āωāĻ˛ā§āϞ⧇āĻ– āĻ•āϰāĻž āĻšāϝāĻŧ ) āĻ—āĻŋāϟāϕ⧇ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āϏ⧇āχ āĻ•āĻŽāĻŋāϟāϗ⧁āϞāĻŋ āĻĻ⧇āĻ–āĻžāϤ⧇ āĻŦāϞāĻž āĻšā§Ÿā§‡āϛ⧇ āϝāĻž āϏ⧇āχ āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚āϝāĻŧ⧇āϰ āϏāĻ‚āϘāϟāύ⧇āϰ āϏāĻ‚āĻ–ā§āϝāĻž āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰ⧇āϛ⧇āĨ¤

				
					$ git log -S ZLIB_BUF_MAX --oneline
e01503b zlib: allow feeding more than 4GB in one go
ef49a7a zlib: zlib can only process 4GB at a time
				
			

āφāĻŽāϰāĻž āϝāĻĻāĻŋ āĻāχ āĻ•āĻŽāĻŋāϟāϗ⧁āϞāĻŋāϰ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āϝ āĻĻ⧇āĻ–āĻŋ, āφāĻŽāϰāĻž āĻĻ⧇āĻ–āϤ⧇ āĻĒāĻžāĻŦ āϝ⧇ ef49a7a āϤ⧇ āĻ•āύāĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āϟāϟāĻŋ āϚāĻžāϞ⧁ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āĻ›āĻŋāϞ āĻāĻŦāĻ‚ e01503b āϤ⧇ āĻāϟāĻŋ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āĻ›āĻŋāϞāĨ¤

āφāĻĒāύāĻŋ āϝāĻĻāĻŋ āφāϰāĻ“ āύāĻŋāĻļā§āϚāĻŋāϤ āĻšāϤ⧇ āϚāĻžāύ, āφāĻĒāύāĻŋ -G āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ⧇āϰ āϏāĻžāĻšāĻžāĻ¯ā§āϝ⧇ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āϰ⧇āϗ⧁āϞāĻžāϰ āĻāĻ•ā§āϏāĻĒā§āϰ⧇āĻļāύ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤

āϞāĻžāχāύ āϞāĻ— āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāĻ¨Â 

āφāϰ⧇āĻ•āϟāĻŋ āĻŽā§‹āϟāĻžāĻŽā§āϟāĻŋ āωāĻ¨ā§āύāϤ āϞāĻ— āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻšāϞ āϞāĻžāχāύ āχāϤāĻŋāĻšāĻžāϏ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ, āϝāĻž āĻ…āĻ¤ā§āϝāĻ¨ā§āϤ āĻĻāϰāĻ•āĻžāϰāĻŋāĨ¤ āϏāĻšāϜāĻ­āĻžāĻŦ⧇,  git log āĻ•āĻŽāĻžāĻ¨ā§āĻĄā§‡āϰ āϏāĻžāĻĨ⧇ -L āϚāĻžāϞāĻžāύ, āĻāĻŦāĻ‚ āĻāϟāĻŋ āφāĻĒāύāĻžāϕ⧇ āφāĻĒāύāĻžāϰ āϕ⧋āĻĄāĻŦ⧇āϏ⧇āϰ āĻāĻ•āϟāĻŋ āĻĢāĻžāĻ‚āĻļāύ āĻŦāĻž āϕ⧋āĻĄā§‡āϰ āϞāĻžāχāύ⧇āϰ āχāϤāĻŋāĻšāĻžāϏ āĻĻ⧇āĻ–āĻžāĻŦ⧇āĨ¤

āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āϝāĻĻāĻŋ āφāĻŽāϰāĻž zlib.c āĻĢāĻžāχāϞ⧇ git_deflate_bound āĻĢāĻžāĻ‚āĻļāύ⧇ āĻ•āϰāĻž āĻĒā§āϰāϤāĻŋāϟāĻŋ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻĻ⧇āĻ–āϤ⧇ āϚāĻžāχ, āϤāĻžāĻšāϞ⧇ āφāĻŽāϰāĻž git log -L :git_deflate_bound:zlib.c āϚāĻžāϞāĻžāϤ⧇ āĻĒāĻžāϰāĻŋāĨ¤ āĻāϟāĻŋ āϏ⧇āχ āĻĢāĻžāĻ‚āĻļāύ⧇āϰ āϏ⧀āĻŽāĻžāύāĻžāϗ⧁āϞāĻŋ āϕ⧀ āϤāĻž āϖ⧁āρāĻœā§‡ āĻŦ⧇āϰ āĻ•āϰāĻžāϰ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰāĻŦ⧇ āĻāĻŦāĻ‚ āϤāĻžāϰāĻĒāϰ⧇ āχāϤāĻŋāĻšāĻžāϏ⧇āϰ āĻĻāĻŋāϕ⧇ āϤāĻžāĻ•āĻžāĻŦ⧇ āĻāĻŦāĻ‚ āĻĢāĻžāĻ‚āĻļāύāϟāĻŋ āĻĒā§āϰāĻĨāĻŽ āϤ⧈āϰāĻŋ āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ āĻĒā§āϝāĻžāϚāϗ⧁āϞāĻŋāϰ āĻāĻ•āϟāĻŋ āϏāĻŋāϰāĻŋāϜ āĻšāĻŋāϏāĻžāĻŦ⧇ āĻĢāĻžāĻ‚āĻļāύ⧇ āĻ•āϰāĻž āĻĒā§āϰāϤāĻŋāϟāĻŋ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āφāĻŽāĻžāĻĻ⧇āϰ āĻĻ⧇āĻ–āĻžāĻŦ⧇āĨ¤

				
					$ git log -L :git_deflate_bound:zlib.c
commit ef49a7a0126d64359c974b4b3b71d7ad42ee3bca
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Jun 10 11:52:15 2011 -0700

    zlib: zlib can only process 4GB at a time

diff --git a/zlib.c b/zlib.c
--- a/zlib.c
+++ b/zlib.c
@@ -85,5 +130,5 @@
-unsigned long git_deflate_bound(z_streamp strm, unsigned long size)
+unsigned long git_deflate_bound(git_zstream *strm, unsigned long size)
 {
-       return deflateBound(strm, size);
+       return deflateBound(&strm->z, size);
 }


commit 225a6f1068f71723a910e8565db4e252b3ca21fa
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Jun 10 11:18:17 2011 -0700

    zlib: wrap deflateBound() too

diff --git a/zlib.c b/zlib.c
--- a/zlib.c
+++ b/zlib.c
@@ -81,0 +85,5 @@
+unsigned long git_deflate_bound(z_streamp strm, unsigned long size)
+{
+       return deflateBound(strm, size);
+}
+


				
			

āϝāĻĻāĻŋ āĻ—āĻŋāϟ āφāĻĒāύāĻžāϰ āĻĒā§āϰ⧋āĻ—ā§āϰāĻžāĻŽāĻŋāĻ‚ āĻ­āĻžāώāĻžāϝāĻŧ āĻāĻ•āϟāĻŋ āĻĢāĻžāĻ‚āĻļāύ āĻŦāĻž āĻŽā§‡āĻĨāĻĄā§‡ āϕ⧀āĻ­āĻžāĻŦ⧇ āĻŽāĻŋāϞ āϖ⧁āρāĻœā§‡ āĻŦ⧇āϰ āĻ•āϰāϤ⧇ āĻšāϝāĻŧ āϤāĻž āĻŦ⧇āϰ āĻ•āϰāϤ⧇ āύāĻž āĻĒāĻžāϰ⧇, āϤāĻŦ⧇ āφāĻĒāύāĻŋ āĻāϟāĻŋāϕ⧇ āĻāĻ•āϟāĻŋ āϰ⧇āϗ⧁āϞāĻžāϰ āĻāĻ•ā§āϏāĻĒā§āϰ⧇āĻļāĻ¨Â  ( āĻŦāĻž āϰ⧇āĻœā§‡āĻ•ā§āϏ ) āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āύāĨ¤ āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ, āĻāϟāĻŋ āωāĻĒāϰ⧇āϰ āωāĻĻāĻžāĻšāϰāϪ⧇āϰ āĻŽāϤ⧋ āĻāĻ•āχ āĻ•āĻžāϜ āĻ•āϰāĻŦ⧇: 

git log -L ‘/unsigned long git_deflate_bound/’,/^}/:zlib.c 

āφāĻĒāύāĻŋ āĻāϟāĻŋāϕ⧇ āĻāĻ•āϟāĻŋ āϰ⧇āĻžā§āϜ āĻŦāĻž āĻāĻ•āĻ• āϞāĻžāχāύ āύāĻŽā§āĻŦāϰāĻ“ āĻĻāĻŋāϤ⧇ āĻĒāĻžāϰ⧇āύ āĻāĻŦāĻ‚ āφāĻĒāύāĻŋ āĻāĻ•āχ āϧāϰāϪ⧇āϰ āφāωāϟāĻĒ⧁āϟ āĻĒāĻžāĻŦ⧇āύāĨ¤