.\" .\" This file and its contents are supplied under the terms of the .\" Common Development and Distribution License ("CDDL"), version 1.0. .\" You may only use this file in accordance with the terms of version .\" 1.0 of the CDDL. .\" .\" A full copy of the text of the CDDL should have accompanied this .\" source. A copy of the CDDL is also available via the Internet at .\" http://www.illumos.org/license/CDDL. .\" .\" .\" Copyright 2011 Richard Lowe. .\" Copyright 2015 Elysium Digital, L.L.C. .\" Copyright 2018 Joyent, Inc. .\" Copyright 2024 Bill Sommerfeld .\" .Dd February 1, 2024 .Dt GIT-PBCHK 1ONBLD .Os .Sh NAME .Nm git-pbchk , .Nm git-nits .Nd nits and pre-putback checks for git .Sh SYNOPSIS .Nm git-pbchk .Fl l .Nm git-pbchk .Op Fl c Ar check Ns ... .Op Fl p Ar branch .Nm git-nits .Op Fl c Ar check Ns ... .Op Fl p Ar branch .Op Ar file Ns ... .Sh DESCRIPTION Check your workspace for common nits and putback-ending mistakes. A simple set of checks are run over various parts of your workspace and errors encountered are reported, all of which should, generally, be fixed. .Pp As these command names start with .Sq git- they can also be run by .Xr git 1 as subcommands: .Pp .Dl $ git pbchk .Sh OPTIONS .Bl -tag -width 6n .It Fl c Ar check Run the specific .Ar check , as named below. In this mode, individual files can be provided to check. Multiple .Fl c options can be supplied, and will run the named checks in the order given on the command line. .It Fl p Ar branch Compare the current workspace to the parent .Ar branch for the purposes of generating file and comment lists. .Pp If this option is not specified an attempt is made to determine this automatically, if the git branch configuration contains this information. .Pp If no branch is specified and none can be determined automatically .Pa origin/master is used. .It Fl l Print a list of the checks that can be used with .Fl c , with a short description of each one. .El .Sh CHECKS .Bl -tag -width 6n .It Comment format: Cm comchk Check that putback comments follow the prescribed format .Pq only run for pbchk . .It Copyrights: Cm copyright Check that each source file contains a copyright notice for the current year\. You don't need to fix this if you, the potential new copyright holder, chooses not to .It C style: Cm cstyle Check that C source files conform to the illumos C style rules .It Header check: Cm hdrchk Check that C header files conform to the illumos header style rules .Pq in addition to the general C rules . .It Java style: Cm jstyle Check that Java source files conform to the illumos Java style rules .Pq which differ from the traditionally recommended Java style . .It SCCS Keywords: Cm keywords Check that no source files contain unexpanded SCCS keywords. It is possible that this check may false positive on certain inputs. It is generally obvious when this is the case. .Pp This check does not check for expanded SCCS keywords, though the common .Sq ident Ns -style lines should be removed regardless of whether they are expanded. .It Man page check: Cm manlint Check for problems with man pages. .It Mapfile check: Cm mapfilechk Check that linker mapfiles contain a comment directing anyone editing to read the directions in .Pa usr/lib/README.mapfiles . .It Shell script check: Cm shelllint Check for problems with shell scripts. .It Package manifest formatting: Cm pkgfmt Check package manifests for common errors. .It Windows special filename check Cm winnames Check for filenames which would prevent you from checking out illumos-gate on a Windows system. .It Whitespace check: Cm wscheck Check for whitespace issues such as mixed tabs/spaces in source files. .It Committed symlinks check: Cm symlinks Report if there are any symlinks checked into your change; they are not allowed by illumos policy. .El .Sh FILES Exception lists can be used to exclude certain files from checks, named after the specific check. They can be found in .Pa $CODEMGR_WS/exception_lists , or optionally under .Pa $CODEMGR_WS/.git/info/ , where they must be suffixed .Pa .NOT . .Sh SEE ALSO .Xr git 1