1
- [ ![ Build status] ( https://github.com/git/git/workflows/CI/badge.svg )] ( https://github.com/git/git/actions?query=branch%3Amaster+event%3Apush )
1
+ Git for Windows
2
+ ===============
3
+
4
+ [ ![ Contributor Covenant] ( https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg )] ( CODE_OF_CONDUCT.md )
5
+ [ ![ Open in Visual Studio Code] ( https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc )] ( https://open.vscode.dev/git-for-windows/git )
6
+ [ ![ Build status] ( https://github.com/git-for-windows/git/workflows/CI/badge.svg )] ( https://github.com/git-for-windows/git/actions?query=branch%3Amain+event%3Apush )
7
+ [ ![ Join the chat at https://gitter.im/git-for-windows/git ] ( https://badges.gitter.im/Join%20Chat.svg )] ( https://gitter.im/git-for-windows/git?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge )
8
+
9
+ This is [ Git for Windows] ( http://git-for-windows.github.io/ ) , the Windows port
10
+ of [ Git] ( http://git-scm.com/ ) .
11
+
12
+ The Git for Windows project is run using a [ governance
13
+ model] ( http://git-for-windows.github.io/governance-model.html ) . If you
14
+ encounter problems, you can report them as [ GitHub
15
+ issues] ( https://github.com/git-for-windows/git/issues ) , discuss them on Git
16
+ for Windows' [ Google Group] ( http://groups.google.com/group/git-for-windows ) ,
17
+ and [ contribute bug
18
+ fixes] ( https://github.com/git-for-windows/git/wiki/How-to-participate ) .
19
+
20
+ To build Git for Windows, please either install [ Git for Windows'
21
+ SDK] ( https://gitforwindows.org/#download-sdk ) , start its ` git-bash.exe ` , ` cd `
22
+ to your Git worktree and run ` make ` , or open the Git worktree as a folder in
23
+ Visual Studio.
24
+
25
+ To verify that your build works, use one of the following methods:
26
+
27
+ - If you want to test the built executables within Git for Windows' SDK,
28
+ prepend ` <worktree>/bin-wrappers ` to the ` PATH ` .
29
+ - Alternatively, run ` make install ` in the Git worktree.
30
+ - If you need to test this in a full installer, run `sdk build
31
+ git-and-installer`.
32
+ - You can also "install" Git into an existing portable Git via `make install
33
+ DESTDIR=<dir >` where ` <dir >` refers to the top-level directory of the
34
+ portable Git. In this instance, you will want to prepend that portable Git's
35
+ ` /cmd ` directory to the ` PATH ` , or test by running that portable Git's
36
+ ` git-bash.exe ` or ` git-cmd.exe ` .
37
+ - If you built using a recent Visual Studio, you can use the menu item
38
+ ` Build>Install git ` (you will want to click on `Project>CMake Settings for
39
+ Git` first, then click on ` Edit JSON` and then point ` installRoot` to the
40
+ ` mingw64 ` directory of an already-unpacked portable Git).
41
+
42
+ As in the previous bullet point, you will then prepend ` /cmd ` to the ` PATH `
43
+ or run using the portable Git's ` git-bash.exe ` or ` git-cmd.exe ` .
44
+ - If you want to run the built executables in-place, but in a CMD instead of
45
+ inside a Bash, you can run a snippet like this in the ` git-bash.exe ` window
46
+ where Git was built (ensure that the ` EOF ` line has no leading spaces), and
47
+ then paste into the CMD window what was put in the clipboard:
48
+
49
+ ``` sh
50
+ clip.exe << EOF
51
+ set GIT_EXEC_PATH=$( cygpath -aw .)
52
+ set PATH=$( cygpath -awp " .:contrib/scalar:/mingw64/bin:/usr/bin:$PATH " )
53
+ set GIT_TEMPLATE_DIR=$( cygpath -aw templates/blt)
54
+ set GITPERLLIB=$( cygpath -aw perl/build/lib)
55
+ EOF
56
+ ` ` `
57
+ - If you want to run the built executables in-place, but outside of Git for
58
+ Windows' SDK, and without an option to set/override any environment
59
+ variables (e.g. in Visual Studio' s debugger), you can call the Git executable
60
+ by its absolute path and use the ` --exec-path` option, like so:
61
+
62
+ ` ` ` cmd
63
+ C:\git-sdk-64\usr\src\git\git.exe --exec-path=C:\git-sdk-64\usr\src\git help
64
+ ` ` `
65
+
66
+ Note: for this to work, you have to hard-link (or copy) the ` .dll` files from
67
+ the ` /mingw64/bin` directory to the Git worktree, or add the ` /mingw64/bin`
68
+ directory to the ` PATH` somehow or other.
69
+
70
+ To make sure that you are testing the correct binary, call ` ./git.exe version`
71
+ in the Git worktree, and then call ` git version` in a directory/window where
72
+ you want to test Git, and verify that they refer to the same version (you may
73
+ even want to pass the command-line option ` --build-options` to look at the
74
+ exact commit from which the Git version was built).
2
75
3
76
Git - fast, scalable, distributed revision control system
4
77
=========================================================
@@ -29,7 +102,7 @@ CVS users may also want to read [Documentation/gitcvs-migration.txt][]
29
102
(` man gitcvs-migration` or ` git help cvs-migration` if git is
30
103
installed).
31
104
32
- The user discussion and development of Git take place on the Git
105
+ The user discussion and development of core Git take place on the Git
33
106
mailing list -- everyone is welcome to post bug reports, feature
34
107
requests, comments and patches to git@vger.kernel.org (read
35
108
[Documentation/SubmittingPatches][] for instructions on patch submission
@@ -43,6 +116,7 @@ To subscribe to the list, send an email to <git+subscribe@vger.kernel.org>
43
116
(see https://subspace.kernel.org/subscribing.html for details). The mailing
44
117
list archives are available at < https://lore.kernel.org/git/> ,
45
118
< https://marc.info/? l=git> and other archival sites.
119
+ The core git mailing list is plain text (no HTML! ).
46
120
47
121
Issues which are security relevant should be disclosed privately to
48
122
the Git Security mailing list < git-security@googlegroups.com> .
0 commit comments