Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1254 commits
Select commit Hold shift + click to select a range
c2cafaf
Move 'Git for Teams' book to left column
katrinleinweber Feb 11, 2020
2bdebd1
Merge pull request #1431 from katrinleinweber/add-gitforteams-book
pedrorijo91 Feb 12, 2020
db5fbb8
[Security] Bump nokogiri from 1.10.5 to 1.10.8
dependabot-preview[bot] Feb 24, 2020
f7fbc72
Merge pull request #1434 from git/dependabot/bundler/nokogiri-1.10.8
pedrorijo91 Feb 25, 2020
06bd38c
[Security] Bump puma from 3.12.2 to 3.12.3
dependabot-preview[bot] Feb 28, 2020
1952433
Merge pull request #1435 from git/dependabot/bundler/puma-3.12.3
peff Feb 28, 2020
afe7b62
[Security] Bump rake from 12.3.2 to 13.0.1
dependabot-preview[bot] Feb 28, 2020
c447a67
Merge pull request #1436 from git/dependabot/bundler/rake-13.0.1
peff Feb 28, 2020
54e25c2
[Security] Bump puma from 3.12.3 to 3.12.4
dependabot-preview[bot] Mar 1, 2020
d3a0331
Merge pull request #1437 from git/dependabot/bundler/puma-3.12.4
peff Mar 1, 2020
8fa7cc7
manpages: add other languages
jnavila Mar 11, 2020
76a9772
Merge branch 'master' into manpage_languages
peff Mar 12, 2020
7d43c22
Merge pull request #1438 from git/manpage_languages
jnavila Mar 12, 2020
6408da7
trademark policy: spell out US reg#
gitster Mar 12, 2020
cfe41d6
Merge pull request #1439 from gitster/master
pedrorijo91 Mar 12, 2020
56da43c
Gemfile: drop json gem
peff Mar 19, 2020
79beb7c
Merge pull request #1442 from git/drop-json-gem
peff Mar 19, 2020
dca73d3
Progit: switch German translation to complete
jnavila Apr 1, 2020
37270eb
Merge pull request #1443 from git/progit_german_full
jnavila Apr 1, 2020
00b32b8
manpage-l10n fix import script to manage zh_HANS-CN
jnavila Apr 10, 2020
298be6d
downloads: rename "downloading" template to "download_mac"
peff Apr 14, 2020
0f14201
downloads: add alternatives for macos install
peff Apr 14, 2020
c7c3a61
downloads: link to latest tarball version for Linux
peff Apr 14, 2020
a97aa2a
downloads: use link_to
peff Apr 14, 2020
0067776
downloads: drop unused variables from download_mac render
peff Apr 14, 2020
63b66f5
preindex: only import a subset of tags
peff Apr 14, 2020
103734d
lib/tasks/index.rake: appease Rubocop
ttaylorr Apr 14, 2020
2e79a32
Merge pull request #1449 from git/mac-instructions
peff Apr 14, 2020
d0c3f19
Merge branch 'master' into sane-version-list
peff Apr 14, 2020
b03f89d
Update Fork client pricing
j3bb9z Apr 16, 2020
f79b6c5
Merge pull request #1451 from jacob87o2/update-fork-gui
pedrorijo91 Apr 16, 2020
c33b222
Merge branch 'master' into sane-version-list
peff Apr 17, 2020
ecbf5a7
Merge pull request #1450 from git/sane-version-list
peff Apr 17, 2020
a59dbf8
db/schema: drop related_items
peff Apr 23, 2020
fed40c7
index.rake: factor out asciidoc creation
peff Apr 23, 2020
213ed05
index.rake: define litdd attribute
peff Apr 23, 2020
e1300e3
Gemfile: update asciidoctor version to v2.0.x
peff Apr 23, 2020
23c9bfe
Merge pull request #1453 from git/asciidoc-fixups
peff Apr 23, 2020
4baca0b
docs: Force asciidoctor in compat mode
jnavila Apr 28, 2020
eba3914
index.rake: convert tab indent to spaces
peff Apr 28, 2020
e4a1133
Merge pull request #1454 from git/docs_fix_compat_mode
peff Apr 28, 2020
435369f
Add jetbrains image for progit book
jnavila May 7, 2020
995ca1b
Merge branch 'master' into book_jetbrains_image
jnavila May 7, 2020
9a4b145
Added Vershd to the Git GUI list
May 7, 2020
3c4068b
Merge pull request #1457 from Blightysoft/Vershd
pedrorijo91 May 7, 2020
782e1d8
Update links to prevent redirects
coliff May 12, 2020
eb1fc19
Merge pull request #1460 from coliff/patch-1
peff May 12, 2020
a035d04
Fix broken link on robots.txt
coliff May 12, 2020
403af10
robots.txt: drop comment lines
peff May 20, 2020
e6dda3e
Merge pull request #1461 from coliff/patch-1
peff May 20, 2020
50a8723
build(deps): [security] bump puma from 3.12.4 to 3.12.6
dependabot-preview[bot] May 22, 2020
fd54e1b
Merge pull request #1465 from git/dependabot/bundler/puma-3.12.6
peff May 22, 2020
439d057
Add x64 and x86_64 to user agent regex
aaronfranke May 26, 2020
7cdd411
Merge pull request #1468 from aaronfranke/x64
peff May 26, 2020
07de663
index_l10n_doc: do not reaffect the value of path in loop
jnavila Jun 5, 2020
db4e920
docs: render 'MyFirstObjectWalk'
phil-blain Jun 7, 2020
6d6d25d
docs: add gitfaq to the list of guides
phil-blain May 20, 2020
f52f998
Merge pull request #1463 from phil-blain/add-faq-to-guides
jnavila Jun 7, 2020
10ced5c
Merge branch 'master' into fix_recursive_includes_man_l10n
jnavila Jun 7, 2020
b87b9cb
Merge pull request #1471 from git/fix_recursive_includes_man_l10n
jnavila Jun 7, 2020
5292825
Merge branch 'master' into docs-add-myfirstobjectwalk
pedrorijo91 Jun 8, 2020
79cf5a7
Merge pull request #1472 from phil-blain/docs-add-myfirstobjectwalk
pedrorijo91 Jun 8, 2020
48de3aa
New GitHub Desktop screenshots from latest version
niik Jun 15, 2020
fb6b400
Merge pull request #1474 from niik/updated-github-desktop-screenshots
ttaylorr Jun 15, 2020
557833e
Try to clarify mailing list usage
pedrorijo91 Jun 20, 2020
03aaaa3
Update app/views/community/index.html.erb
pedrorijo91 Jun 23, 2020
de7218c
Merge pull request #1475 from git/pedrorijo91-patch-1
pedrorijo91 Jun 23, 2020
02d5cbb
Add information about Git Developer Pages
chriscool Jun 24, 2020
44a1e8a
Add information about Git Rev News
chriscool Jun 23, 2020
16842c1
Merge pull request #1478 from chriscool/dev-pages
peff Jun 24, 2020
3327618
Merge branch 'master' into git-rev-news
pedrorijo91 Jun 24, 2020
e65a020
Merge pull request #1477 from chriscool/git-rev-news
pedrorijo91 Jun 24, 2020
be7bf5e
community: advertise 'git-bugreport' tool
nasamuffin May 28, 2020
f680a1d
Merge branch 'master' into advertise-bugreport
nasamuffin Jun 24, 2020
79baec8
community: avoid code blocks for command names, etc
peff Jun 24, 2020
4d42ee6
community: move git-bugreport advice to its own paragraph
peff Jun 24, 2020
8332221
Merge pull request #1479 from nasamuffin/advertise-bugreport
peff Jun 25, 2020
c6e8592
index task: correct error message on missing included
jnavila Jul 9, 2020
636a06b
Add GitUI client
Jul 11, 2020
c82fc46
Xcode -> Xcode
orta Jul 14, 2020
fc8fbe5
Merge pull request #1486 from orta/patch-1
pedrorijo91 Jul 14, 2020
f187675
Merge branch 'master' into master
pedrorijo91 Jul 14, 2020
52bdf77
Clarified pricing
Jul 15, 2020
609b105
Merge branch 'master' of github.com:Vidar314/git-scm.com
Jul 15, 2020
de06898
Merge pull request #1485 from Vidar314/master
pedrorijo91 Jul 15, 2020
5f72fe5
Update "Git Beginner's Guide for Dummies" in the External Links section.
yasuyuki-baba Jul 16, 2020
cbeb2ab
Merge pull request #1488 from nulab/update-link-text-for-beginners-gu…
pedrorijo91 Jul 16, 2020
a1b58c5
Fix current section detection on chapter listing
pedrorijo91 Jul 19, 2020
784b6de
Merge branch 'master' into fix/chapter_listing_active
pedrorijo91 Jul 19, 2020
709c94c
Merge pull request #1491 from git/fix/chapter_listing_active
peff Jul 20, 2020
1d9e25a
Use prominent color for "Release notes" link
sivaraam Aug 5, 2020
ce1e631
Underline the "Release notes" link
sivaraam Aug 5, 2020
5c3715d
Merge pull request #1493 from sivaraam/patch-1
peff Aug 7, 2020
a3d9855
Add lazygit to list of guis
jesseduffield Aug 25, 2020
faf3359
bubble up guis based on google trends
jesseduffield Aug 25, 2020
1482245
move lazygit image and add 1x version
jesseduffield Aug 25, 2020
a83a412
Merge pull request #1496 from jesseduffield/master
pedrorijo91 Aug 26, 2020
202432d
Add magit to list of guis
tarsius Aug 31, 2020
f3d416f
Merge pull request #1499 from tarsius/magit
peff Sep 1, 2020
3d62fa2
tasks/book2: prefer HEAD over "heads/master"
peff Sep 10, 2020
a72b900
tasks/book2: fix race with HEAD update
peff Sep 10, 2020
eb67825
tasks/index: prefer "HEAD" over "master"
peff Sep 10, 2020
a92db37
Merge pull request #1502 from git/prefer-head
peff Sep 11, 2020
f945dfa
tasks/book2: fix bogus sha-checking
peff Sep 11, 2020
d733d74
more translated manpages
jnavila Oct 10, 2020
d2ecc8b
Merge pull request #1515 from git/man_l10n_pages
jnavila Oct 10, 2020
4a8dbba
Update KDE git instance to the new GitLab instance
CarlSchwan Oct 16, 2020
22a1763
Merge pull request #1517 from ognarb/patch-1
pedrorijo91 Oct 16, 2020
93532a9
docs: link to githooks with 'Hooks'
phil-blain Aug 25, 2020
20558b2
docs: add a link to the list of all guides
phil-blain Aug 25, 2020
a5e4e93
Merge pull request #1497 from phil-blain/link-to-all-guides
peff Oct 22, 2020
332504f
FIX: hover links: only barely overlap content
makyen Oct 23, 2020
6bdaa76
css: adjust horizontal alignment of section links
peff Oct 28, 2020
7ef66a1
Merge pull request #1520 from makyen/Mak-adjust-section-link-width
peff Oct 28, 2020
e3b2ec9
books: move azerbaijani translation to fully translated
jnavila Oct 31, 2020
63a2ec0
Add git-gui to the macOS download page
unbeatable-101 Nov 3, 2020
1364071
Remove sudo:false
unbeatable-101 Nov 3, 2020
0028b87
Added gitk and updated wording
unbeatable-101 Nov 5, 2020
d08cf7e
Merge pull request #1527 from unbeatable-101/patch-2
pedrorijo91 Nov 5, 2020
68316bc
book: localize constant strings when available
jnavila Oct 31, 2020
f11928f
Merge branch 'master' into book_localize_strings
jnavila Nov 6, 2020
a52b716
Merge pull request #1524 from git/book_localize_strings
jnavila Nov 6, 2020
d35b72a
Merge branch 'master' into patch-1
unbeatable-101 Nov 6, 2020
0cda2dc
Merge pull request #1526 from unbeatable-101/patch-1
pedrorijo91 Nov 9, 2020
84b6c71
book: remove force building in compat mode
jnavila Nov 11, 2020
25f2e6d
Merge branch 'master' into book_localize_strings
peff Nov 11, 2020
c0ff6e0
Merge pull request #1532 from git/book_localize_strings
peff Nov 11, 2020
e30efc5
Add PolyGit to guis.yml
polygitapp Nov 12, 2020
2812d45
Add PolyGit to guis.yml
polygitapp Nov 12, 2020
4ce0a63
Merge pull request #1533 from polygitapp/git-gui-polygitapp
pedrorijo91 Nov 12, 2020
889d14c
Updated Vershd in the Git GUI list
Nov 13, 2020
4581fe9
Merge pull request #1534 from Blightysoft/Vershd
pedrorijo91 Nov 13, 2020
9ab4334
It's 2020
simon04 Nov 18, 2020
c4f63a1
Merge pull request #1538 from simon04/patch-1
peff Nov 24, 2020
470f1a9
swap out API_USER/API_PASS for GITHUB_API_TOKEN
peff Nov 28, 2020
976e892
Merge pull request #1541 from git/use-auth-tokens
peff Nov 28, 2020
e7bb184
build(deps): bump dot-prop from 4.2.0 to 4.2.1
dependabot[bot] Nov 28, 2020
397c705
Merge pull request #1542 from git/dependabot/npm_and_yarn/dot-prop-4.2.1
peff Dec 1, 2020
aea2751
re-add conservancy banner
peff Dec 17, 2019
b7a0202
Merge pull request #1544 from git/sfc-banner
peff Dec 8, 2020
1208d16
banner: really bump year
peff Dec 17, 2019
ead1c60
Update the url to homebrew's website.
Mariatta Dec 8, 2020
2534d29
Merge pull request #1545 from Mariatta/update-homebrew-url
pedrorijo91 Dec 9, 2020
14197d1
Gemfile: drop bullet gem
peff Dec 11, 2020
8562065
stop using before_filter
peff Dec 11, 2020
3238f9d
stop using image_alt() function
peff Dec 11, 2020
b349b7e
bump ruby and rails versions
peff Dec 11, 2020
97d2d9a
update rails files
peff Dec 11, 2020
6ae11f9
Gemfile: add listen gem
peff Dec 11, 2020
8798937
assets: make sprockets manifest
peff Dec 11, 2020
a581edf
test: s/FactoryGirl/FactoryBot/
peff Dec 12, 2020
8600df0
test/factories: don't use static attributes
peff Dec 12, 2020
896ea93
test: pass params to "get" using :params
peff Dec 12, 2020
e747cb8
test: do some shoulda-matcher setup
peff Dec 12, 2020
af7e16d
Gemfile: include shoulda
peff Dec 12, 2020
0ece747
test/performance: set perf outputs
peff Dec 12, 2020
9304031
test: drop doc perf test
peff Dec 12, 2020
ba190d4
Gemfile.lock: drop rails-perftest
peff Dec 13, 2020
4cd59bc
Gemfile: add rails-controller-testing
peff Dec 13, 2020
0f676c3
download_service: use URI.open to open uri
peff Dec 13, 2020
c43043f
spec: more get "params" fixups
peff Dec 13, 2020
e276169
download_service: hack around Time error
peff Dec 13, 2020
c20a40e
rubucop: bump expected ruby version
peff Dec 13, 2020
8414a2d
rubocop: add rubocop-rails dependency
peff Dec 13, 2020
c0a9d29
Gemfile: sort grouped entries
peff Dec 13, 2020
0947e8e
prefer Rails.root.join to Files.join(Rails.root)
peff Dec 13, 2020
a2b836c
prefer find to select.first
peff Dec 13, 2020
9bee208
prefer blank? to present?
peff Dec 13, 2020
244286c
prefer find_by to where.first
peff Dec 13, 2020
d274f59
add a ton of frozen-string-literal comments
peff Dec 13, 2020
27fb375
prefer double-quotes for string literals
peff Dec 13, 2020
e2af8e0
mark Time.parse hack to use iso8601
peff Dec 13, 2020
71d3fef
add dependent fields to all has_many associations
peff Dec 13, 2020
af9b216
index.rake: use Time.zone.at to parse git timestamp
peff Dec 13, 2020
e3c630d
db/migrate: appease rubocop
peff Dec 13, 2020
108a0fb
rubocop: disable Rails/HelperInstanceVariable
peff Dec 13, 2020
2e5de8c
application: drop random_tagline helper
peff Dec 13, 2020
bd4640a
mark versions.name index as unique
peff Dec 13, 2020
85851f0
drop extra spaces around array brackets
peff Dec 13, 2020
b38fbf2
rake: drop copy task
peff Dec 13, 2020
1b4742e
prefer tag to content_tag
peff Dec 13, 2020
2f61af7
rubocop: turn off Rails/TimeZone
peff Dec 13, 2020
6a960ca
config: adjust rack timeout setup
peff Dec 13, 2020
cd1adbd
rake: hack to avoid running yarn during asset precompile
peff Dec 13, 2020
038b231
yarn_install: fix rubocop complaints
peff Dec 13, 2020
ec9ce51
yarn:install hack intensifies
peff Dec 13, 2020
a32978e
drop compass gem
peff Dec 13, 2020
6f9ed14
Gemfile: drop version in pg dependency
peff Dec 13, 2020
80b7310
Merge pull request #1548 from git/update-rails
peff Dec 15, 2020
af422a5
build(deps): bump ini from 1.3.5 to 1.3.8
dependabot[bot] Dec 15, 2020
d3bee2c
Merge pull request #1550 from git/dependabot/npm_and_yarn/ini-1.3.8
peff Dec 15, 2020
cdf102b
manual: tag page sections correctly in git manpage
jnavila Dec 19, 2020
e8a395f
Merge pull request #1552 from git/guides_in_section_7
jnavila Dec 20, 2020
cf438d2
Extract section from the manpages themselves
jnavila Dec 20, 2020
9b7cd42
Merge pull request #1553 from git/guides_in_section_7
jnavila Dec 20, 2020
c690f99
Fix typo
ogennadi Dec 22, 2020
8410cdf
Merge pull request #1554 from ogennadi/patch-1
pedrorijo91 Dec 22, 2020
6dc39ff
It's 2021
Yash-Singh1 Jan 3, 2021
cae0f25
Merge pull request #1555 from Yash-Singh1/patch-1
pedrorijo91 Jan 3, 2021
332ad54
build(deps): [security] bump nokogiri from 1.10.10 to 1.11.0
dependabot-preview[bot] Jan 4, 2021
ba3b047
Merge pull request #1556 from git/dependabot/bundler/nokogiri-1.11.0
peff Jan 4, 2021
e39047c
rename link "Mac OS X" → macOS in downloads/index
pierre-haessig Jan 5, 2021
9ad513e
Merge pull request #1558 from pierre-haessig/patch-1
peff Jan 5, 2021
60d828b
fix html anchor in guides list
jnavila Jan 6, 2021
62cb8a8
Merge pull request #1561 from git/fix_all_guides
jnavila Jan 6, 2021
de03e5c
Fix the "Windows GUIs" link at the home page.
teo-tsirpanis Jan 8, 2021
48ee6fb
Merge pull request #1565 from teo-tsirpanis/patch-1
peff Jan 8, 2021
592f5e5
Fix book images
pedrorijo91 Jan 9, 2021
c8a6ebf
Merge pull request #1566 from git/fix/packt-books-images
pedrorijo91 Jan 9, 2021
6d0bf51
Speed up diff stat in manpages
jnavila Jan 9, 2021
b650ba4
Make the HTML element for `git --version` readonly
ugultopu Jan 10, 2021
3ae8716
Merge pull request #1569 from ugultopu/make-git-version-readonly
pedrorijo91 Jan 10, 2021
acff578
Revert "re-add conservancy banner"
peff Jan 11, 2021
4dfa2bb
Merge pull request #1570 from git/drop-conservancy-banner
peff Jan 11, 2021
23838e5
Merge branch 'master' into speed_up_diff_stat
peff Jan 11, 2021
d276fcd
Merge pull request #1567 from git/speed_up_diff_stat
peff Jan 11, 2021
d10c333
build(deps): [security] bump redcarpet from 3.5.0 to 3.5.1
dependabot-preview[bot] Jan 11, 2021
47d3340
Inverse diffing direction in diffstat
jnavila Jan 11, 2021
15d5ce6
Merge pull request #1573 from git/dependabot/bundler/redcarpet-3.5.1
peff Jan 12, 2021
a338f09
Merge branch 'master' into inverse_diff_stat
peff Jan 12, 2021
be466eb
Merge pull request #1574 from git/inverse_diff_stat
peff Jan 12, 2021
2ea5261
Use semantic HTML elements for Git version command
ugultopu Jan 12, 2021
f64b204
Add Active Record versions to migrations
ugultopu Jan 11, 2021
e34b806
Add missing columns to XREFS table
ugultopu Jan 11, 2021
8df05b1
Add a class to shell prompt
ugultopu Jan 13, 2021
0d27ffd
Merge pull request #1575 from ugultopu/semantic-html-for-git-version
peff Jan 13, 2021
9e4a2da
Merge branch 'master' into add-active-record-version
peff Jan 19, 2021
3aebca2
Use ::before pseudo-element for the shell prompt
ugultopu Jan 14, 2021
d66ad32
Add class for code blocks that represent a command
ugultopu Jan 19, 2021
ae8156e
Merge pull request #1571 from ugultopu/add-active-record-version
peff Jan 19, 2021
2fcbc84
Merge branch 'master' into semantic-html-for-git-version
peff Jan 19, 2021
9a23db5
Merge pull request #1578 from ugultopu/semantic-html-for-git-version
peff Jan 20, 2021
6300c25
Update Sublime Merge graphics
dpjohnst-sudo Jan 20, 2021
26b1faa
Merge pull request #1580 from dpjohnst/update-sublime-merge-graphics
peff Jan 21, 2021
b3a9e1e
Merge branch 'master' into add-missing-columns-to-schema
ugultopu Jan 22, 2021
bc7604f
Merge pull request #1572 from ugultopu/add-missing-columns-to-schema
pedrorijo91 Jan 27, 2021
3a67b04
fix typo
HonkingGoose Feb 9, 2021
00dbb53
Merge pull request #1584 from HonkingGoose/patch-2
pedrorijo91 Feb 10, 2021
d733a8a
Highlight active section with the orange color
vitaly-pushkar Feb 23, 2021
7987e25
Merge pull request #1585 from vitaly-pushkar/patch-1
peff Feb 23, 2021
e560b5f
Fix #1589
jnavila Feb 28, 2021
4f4b011
book2: drop template_dir variable entirely
peff Mar 1, 2021
20cf2b1
book2: use URI.open to get translation attributes
peff Mar 1, 2021
fff1673
Merge pull request #1590 from git/fix_1589
peff Mar 1, 2021
dd73d6a
chore: improve GitHub templates
HonkingGoose Mar 1, 2021
f29d515
issue_template: explain manpages link
peff Mar 3, 2021
5418294
Merge pull request #1591 from HonkingGoose/chore/improve-github-templ…
peff Mar 3, 2021
375af27
run "bundle update"
peff Mar 30, 2021
04fb0d3
rubocop: disable InsecureHashAlgorithm check
peff Mar 30, 2021
5c2c709
Merge pull request #1597 from git/mimemagic
peff Mar 30, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 1 addition & 3 deletions .env.example
Original file line number Diff line number Diff line change
@@ -1,3 +1 @@
UPDATE_TOKEN=test
API_USER=
API_PASS=
GITHUB_API_TOKEN=
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
blank_issues_enabled: false
contact_links:
- name: Problems/questions/bugs about Git program
url: https://git-scm.com/community
about: Start a discussion on the community mailing list.

- name: Problems about Git for Windows program
url: https://github.com/git-for-windows/git/issues
about: Report problems with the Git for Windows program.

- name: Git documentation (man/help pages)
url: https://git-scm.com/community
about: >
The Git documentation under https://git-scm.com/docs is imported
from the Git project itself. Any content problems or suggestions
should be reported there.

- name: Pro Git 2 book content
url: https://github.com/progit/progit2/issues
about: Report problems with the ProGit 2 book content.
32 changes: 32 additions & 0 deletions .github/ISSUE_TEMPLATE/downloads.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
---
name: "Downloads on git-scm not working"
about: "If you are experiencing problems downloading Git from git-scm.com"
---

<!---
Please follow the instructions below.
An issue properly explained is solved much faster!
-->

<!--- Provide a brief summary of the issue in the issue title -->

### Which download is failing?

<!--- Tell us in which page and version is the download broken -->

### Problem

<!--- Explain the problem clearly -->

### Operating system and browser

<!--- Which operating system and browser are you using? -->

### Steps to reproduce

<!--- Provide a detailed list of steps. -->
<!--- In the rare cases where this is not possible, we will accept a detailed set of instructions. -->

### Other details

<!--- Include as many relevant details you may find relevant -->
34 changes: 34 additions & 0 deletions .github/ISSUE_TEMPLATE/ui.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
name: "git-scm user interface broken"
about: "git-scm.com user interface is not working"
---

<!---
Please follow the instructions below.
An issue properly explained is solved much faster!

Only report problems with the git-scm.com site's JavaScript, CSS or content that doesn't seem to be doing its job correctly!
-->

<!--- Provide a brief summary of the issue in the issue title -->

### URL for broken page

<!--- Give us the link to the broken page -->

### Problem

<!--- Explain the problem clearly -->

### Operating system and browser

<!--- Which operating system and browser are you using? -->

### Steps to reproduce

<!--- Provide a detailed list of steps. -->
<!--- In the rare cases where this is not possible, we will accept a detailed set of instructions. -->

### Other details

<!--- Include as many relevant details you may find relevant -->
9 changes: 9 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
## Changes

<!-- List the changes this PR makes. -->

-

## Context

<!-- Explain why you're making these changes. -->
15 changes: 9 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,20 +1,15 @@
# See http://help.github.com/ignore-files/ for more about ignoring files.
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
#
# If you find yourself ignoring temporary files generated by your text editor
# or operating system, you probably want to add a global ignore instead:
# git config --global core.excludesfile ~/.gitignore_global

.rbenv-version
.env

# Ignore bundler config
/.bundle
/bin
/vendor/gems


config/database.yml

# Ignore the default SQLite database.
/db/*.sqlite3*

Expand All @@ -30,3 +25,11 @@ config/database.yml
*.swo

/public/*.zip

node_modules/

# Ignore byebug history
.byebug_history

# RSpec
spec/examples.txt
2 changes: 1 addition & 1 deletion .rspec
Original file line number Diff line number Diff line change
@@ -1 +1 @@
--color
--require spec_helper
26 changes: 26 additions & 0 deletions .rubocop.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
require:
- rubocop-rails

inherit_gem:
rubocop-github:
- config/default.yml
- config/rails.yml

AllCops:
TargetRubyVersion: 2.7

Performance:
enabled: true

Style/FrozenStringLiteralComment:
Exclude:
- db/schema.rb

Rails/HelperInstanceVariable:
Enabled: false

Rails/TimeZone:
Enabled: false

GitHub/InsecureHashAlgorithm:
Enabled: false
2 changes: 1 addition & 1 deletion .ruby-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.1.2
2.7.2
5 changes: 5 additions & 0 deletions .stylelintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"extends": [
"stylelint-config-primer"
]
}
16 changes: 13 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,16 @@
language: ruby
script: 'script/travis-ci'
rvm:
- 2.1.2

before_script:
- bundle exec rake db:create db:schema:load

bundler_args: --without development production --jobs=3 --retry=3

cache:
bundler: true

notifications:
email: false

script:
- bundle exec rubocop -P
- bundle exec rspec
162 changes: 162 additions & 0 deletions ARCHITECTURE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,162 @@
# git-scm.com architecture

This document describes the general setup and architecture that runs the
git-scm.com site. The idea is to document all the moving parts that
_aren't_ checked in to this repository. That may help new people joining
the project to help out, as well provide some continuity in case the
maintainer is hit by a bus.

## Content

Though the site is a rails app, it can _mostly_ be thought of as serving
static content. It's just that we suck in that static content and
pre-process it using nightly scheduled jobs. We never write anything to
the database on behalf of user requests.

The content is a mix of:

- actual static content in this repository

- community book content brought in from https://github.com/progit;
see the `lib/tasks/book2.rake` file.

- manpages from releases of the git project, imported and formatted
via asciidoctor; see the `lib/tasks/index.rake` task.


## Heroku

The app itself is served by Heroku. The app name is `git-scm` (so you
can visit it directly as https://git-scm.herokuapp.com). The site is
owned by the git-scm.com team. If you want to be involved in managing
uptime/deploys/etc, you'll need a Heroku account and request to be added
to that team. The git-scm team receives credits from Heroku so that the
hosting is free.

We use a few Heroku add-ons:

- Bonsai elasticsearch (see below)

- Heroku Postgres as the database

- Heroku Redis for rails caching

- Heroku scheduler for cron jobs

The nightly scheduled jobs are:

- `rake downloads` (pick up newly released git versions)

- `rake preindex` (pull in and format manpages for released git
versions)

- `rake remote_genbook2` (pull in and format progit2 book content,
including translations)

It should be safe to run any of those jobs more frequently. E.g., if you
know there's a new Git release out, then:

heroku run rake preindex
heroku run rake downloads

will get it on the site without waiting for the nightly run.

Merges to the `master` branch on GitHub auto-deploy to Heroku, so unless
you're doing something tricky you generally shouldn't need to manually
deploy.

Note that some of the formatting of manpages and book content happens
when they are imported by the rake tasks. So after fixing some
formatting and deploying, the rake jobs may need to be re-run with a
special flag to re-import (see the individual tasks for details).


## Cloudflare

We get enough requests that it's easy to overwhelm the single Heroku
dyno. So we have Cloudflare sitting in front of it, aggressively caching
everything. That also should make the site faster to serve to regions
far away from Heroku's servers.

The Cloudflare setup is mostly pretty simple:

- they serve DNS for the whole domain (that's where they insert the CDN
magic)

- Cloudflare provides `https://` support to the user. Obviously the
site is totally open and doesn't have any sensitive data, so this is
really more about integrity. The certificate is generated by
Cloudflare (and requires SNI on the browser side).

- the Cloudflare connection to Heroku is passed over TLS; they provide an
"internal" certificate that we ask Heroku to use, so the connection
is secured between the two (again, mostly for integrity)

- the most exotic config is that we use "page rules" to mark the whole
site to be cached aggressively, regardless of any caching headers
sent from Heroku. This is a bit of a hack, but there's very little on
the site that can't be cached (which is perhaps a sign that the rails
setup needs to be tweaked to send more reasonable caching headers,
but this has been simple and effective so far).

There are a few special page rules to lift this caching for cases
where we do server-side logic (e.g.,
https://github.com/git/git-scm.com/issues/1129#issuecomment-363067019"),
but the long-term goal is to push that logic onto the client side as
much as possible.

Both domains (c.f., the section on [DNS](#DNS) below) are owned by a
Cloudflare "Team", and membership of that team is required to
administrate the domains. Similar to the Heroku setup, you can ask to
join this team if you wish to help out. The information about the team
setup is in escrow with the Git PLC at Software Freedom Conservancy.
Cloudflare provides the project with enough credits that it doesn't cost
anything (though we're not using very many features, so it's possible
that a free account would be sufficient, too).

## Bonsai Elasticsearch

The search functionality on the site is served by an elasticsearch
cluster. The index can be populated by running `rake search_index`
(manpages) and `rake search_index_book` (book) on Heroku (we only index
the manpages and book). This perhaps should be run nightly, or at least
after pulling in new content, but it currently isn't done automatically.

The elasticsearch cluster is provided by Bonsai via their Heroku plugin.
Our needs are larger than their free tier provides, but we receive
credits from them that provide the service for free.


## DNS

The actual DNS service is provided by Cloudflare (see above). The domain
itself is registered with Gandi, and is owned by the project via
Software Freedom Conservancy. Funds for the registration are provided
from the Git project's Conservancy funds, and both the Git PLC and
Conservancy have credentials to modify the setup.

Note that we own both git-scm.com and git-scm.org; the latter redirects
to the former.


## Manual Intervention

The site mostly just runs without intervention:

- code merged to `master` is auto-deployed

- new git versions are detected daily and manpages and download links
updated

- book updates (including translations) are picked up daily

There are a few tasks that still need to be handled by a human:

- new images added to the book have to be copied manually from
progit/progit2

- new languages for book translations need to be added to
`lib/tasks/book2.rake`

- forced re-imports of content (e.g., a formatting fix to imported
manpages) must be triggered manually
Loading