PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB` Tools for developing Git

Summary

This document gathers tips, scripts, and configuration files to help people working on Git’s codebase use their favorite tools while following Git’s coding style.

Author

The Git community.

Table of contents

Visual Studio Code (VS Code)

The contrib/vscode/init.sh script creates configuration files that enable several valuable VS Code features. See contrib/vscode/README.md for more information on using the script.

Emacs

This is adapted from Linux’s suggestion in its CodingStyle document:

  • To follow the rules in CodingGuidelines, it’s useful to put the following in GIT_CHECKOUT/.dir-locals.el, assuming you use cperl-mode:

;; note the first part is useful for C editing, too
((nil . ((indent-tabs-mode . t)
         (tab-width . 8)
         (fill-column . 80)))
         (cperl-mode . ((cperl-indent-level . 8)
                        (cperl-extra-newline-before-brace . nil)
                        (cperl-merge-trailing-else . t))))

For a more complete setup, since Git’s codebase uses a coding style similar to the Linux kernel’s style, tips given in Linux’s CodingStyle document can be applied here too.