tis-git icon

Git

Silent install package for Git

2.56.0.2-18
Development
Utilities
Development
Utilities

  • package: tis-git
  • name: Git
  • version: 2.56.0.2-18
  • categories: Development,Utilities
  • maintainer: WAPT Team,Tranquil IT,Jimmy PELÉ,Flavien SCHELFAUT
  • editor: Software Freedom Conservancy
  • licence: opensource_free,cpe:/a:gnu:gpl_v2,wapt_public
  • locale: all
  • target_os: windows
  • impacted_process: git,git-askpass,git-askyesno,git-bash,git-cmd,git-credential-helper-selector,git-credential-manager,git-credential-manager-core,git-credential-manager-ui,git-credential-wincred,git-daemon,git-gui,git-http-backend,git-http-fetch,git-http-push,git-imap-send,git-lfs,git-receive-pack,git-remote-ftp,git-remote-ftps,git-remote-http,git-remote-https,git-sh-i18n--envsubst,git-upload-archive,git-upload-pack,git-wrapper,gitk
  • architecture: arm64
  • signature_date:
  • size: 64.32 Mo
  • installed_size: 368.10 Mo
  • homepage : https://git-scm.com/
  • conflicts :

package           : tis-git
version           : 2.56.0.2-18
architecture      : arm64
section           : base
priority          : optional
name              : Git
categories        : Development,Utilities
maintainer        : WAPT Team,Tranquil IT,Jimmy PELÉ,Flavien SCHELFAUT
description       : Git is a free, open-source, decentralized version control system designed to quickly and efficiently manage all projects, from the smallest to the largest
depends           : 
conflicts         : tis-git-lfs
maturity          : PROD
locale            : all
target_os         : windows
min_wapt_version  : 2.3
sources           : https://github.com/git-for-windows/git/releases
installed_size    : 368096729
impacted_process  : git,git-askpass,git-askyesno,git-bash,git-cmd,git-credential-helper-selector,git-credential-manager,git-credential-manager-core,git-credential-manager-ui,git-credential-wincred,git-daemon,git-gui,git-http-backend,git-http-fetch,git-http-push,git-imap-send,git-lfs,git-receive-pack,git-remote-ftp,git-remote-ftps,git-remote-http,git-remote-https,git-sh-i18n--envsubst,git-upload-archive,git-upload-pack,git-wrapper,gitk
description_fr    : Git est un système de contrôle de version libre, gratuit et décentralisé, conçu pour gérer rapidement et efficacement tous les projets, des plus petits aux plus grands
description_pl    : Git to darmowy, zdecentralizowany system kontroli wersji o otwartym kodzie źródłowym, zaprojektowany do szybkiego i wydajnego zarządzania wszystkimi projektami, od najmniejszych do największych
description_de    : Git ist ein kostenloses, dezentralisiertes Open-Source-Versionskontrollsystem, das für die schnelle und effiziente Verwaltung aller Projekte, von den kleinsten bis zu den größten, entwickelt wurde
description_es    : Git es un sistema de control de versiones descentralizado, gratuito y de código abierto diseñado para gestionar de forma rápida y eficaz todos los proyectos, desde los más pequeños a los más grandes
description_pt    : O Git é um sistema de controlo de versões gratuito, de código aberto e descentralizado, concebido para gerir rápida e eficientemente todos os projectos, desde os mais pequenos aos maiores
description_it    : Git è un sistema di controllo delle versioni gratuito, open-source e decentralizzato, progettato per gestire in modo rapido ed efficiente tutti i progetti, dai più piccoli ai più grandi
description_nl    : Git is een gratis, open-source, gedecentraliseerd versiebeheersysteem dat is ontworpen om snel en efficiënt alle projecten te beheren, van de kleinste tot de grootste
description_ru    : Git - это бесплатная децентрализованная система контроля версий с открытым исходным кодом, предназначенная для быстрого и эффективного управления всеми проектами, от самых маленьких до самых больших
audit_schedule    : 
editor            : Software Freedom Conservancy
keywords          : git,project,projects,version,control,system
licence           : opensource_free,cpe:/a:gnu:gpl_v2,wapt_public
homepage          : https://git-scm.com/
package_uuid      : 814e6bfd-9338-4dea-bb84-8f2cd2fabcbd
valid_from        : 
valid_until       : 
forced_install_on : 
changelog         : https://github.com/git/git/blob/master/Documentation/RelNotes
min_os_version    : 10.0.22621
max_os_version    : 
icon_sha256sum    : 4a6e5031edc6e22a06cb5f12e89dea8738b88839c2cb99e2e7e0d9df345e2252
signer            : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date    : 2026-10-13T10:21:47.000000
signed_attributes : package,version,architecture,section,priority,name,categories,maintainer,description,depends,conflicts,maturity,locale,target_os,min_wapt_version,sources,installed_size,impacted_process,description_fr,description_pl,description_de,description_es,description_pt,description_it,description_nl,description_ru,audit_schedule,editor,keywords,licence,homepage,package_uuid,valid_from,valid_until,forced_install_on,changelog,min_os_version,max_os_version,icon_sha256sum,signer,signer_fingerprint,signature_date,signed_attributes
signature         : uRLj6KHJFZagOsDdIYklTQjWTsR4dFptlOzt1YiVFD22SQ7qvcNtXFdOYgE/KATn4XOFzkVXSlirGCmdK0Ol7izWk13pVzttgNtsu7WG50WteM7U7l6r1Ar+nytVzJOI1MtkYg/ym8WwH78nMwghltVoCJ4iGdA30c2jfPVQwFH6/IHOnTLnN5OT0morjbHkw7A48pNHmHGBOhvzRFF2yZh20z9GyDIT/AkbkHlGnPifEMJ6La0WH95V8yFilrIZqyL72mvblv4GzLXEgWmLtuC3w+B6oa1ZfvkItiThFqN7FUVT9QAeLnRCT3trpwfuenQOipIFye4bJRArH9qm3w==

# -*- coding: utf-8 -*-
from setuphelpers import *

app_uninstallkey = "Git_is1"


def get_git_path(soft):
    return makepath(soft["install_location"], "cmd", "git.exe")


def get_soft_version(soft):
    # FileVersion looks like "2.52.0.windows.1"
    return get_file_properties(get_git_path(soft))["FileVersion"].replace(".windows", "")


def install():
    bin_name = glob.glob("Git-*.exe")[0]
    install_exe_if_needed(
        bin_name,
        silentflags='/LOADINF="git.inf" /VERYSILENT /SUPPRESSMSGBOXES /CLOSEAPPLICATIONS /NORESTART',
        key=app_uninstallkey,
        min_version=control.get_software_version(),
        get_version=get_soft_version,
    )

    # Disable credential provider web detection
    app_path = get_git_path(installed_softwares(uninstallkey=app_uninstallkey)[0])
    run(f'"{app_path}" config --global credential.provider generic')

# -*- coding: utf-8 -*-
from setuphelpers import *
from setupdevhelpers import *


def update_package():
    package_updated = False
    proxies = get_proxies()
    if not proxies:
        proxies = get_proxies_from_wapt_console()
    app_name = control.name

    api_url = "https://api.github.com/repos/git-for-windows/git/releases/latest"
    print("API used is: %s" % api_url)
    json_load = wgets(api_url, proxies=proxies, as_json=True)
    version = json_load["tag_name"].replace("v", "").replace(".windows", "")

    os_dict = {
        "windows-x64": "-64-bit.exe",
        "windows-arm64": "-arm64.exe",
    }
    os_type = control.target_os.split("(")[0] + "-" + ensure_list(control.architecture)[0]

    print(f"Latest {app_name} version is: {version}")

    for to_download in json_load["assets"]:
        if to_download["name"].endswith(os_dict[os_type]):
            download_url = to_download["browser_download_url"]
            latest_bin = to_download["name"]
            latest_bin_extension = latest_bin.rsplit('.', 1)[-1]
            break

    if isfile(latest_bin):
        remove_file(latest_bin)
    print(f"Downloading: {latest_bin}")
    wget(download_url, latest_bin, proxies=proxies)
    print(f"Binary is present: {latest_bin}")

    if Version(version) > Version(control.get_software_version()):
        print(f"Software version updated (from: {control.get_software_version()} to: {Version(version)})")
        package_updated = True
    else:
        print(f"Software version up-to-date ({Version(version)})")

    for f in glob.glob(f'*.{latest_bin_extension}'):
        if f != latest_bin:
            remove_file(f)

    control.set_software_version(version)
    control.save_control_to_wapt()

    return package_updated

b9ced78ce371577dc966f50ae571909d6731e36d31065d35c8efa21544c58bf0 : Git-2.56.0.2-arm64.exe
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
24f76d4440a9d3599aac06c217cb51d78921b4124e1825217710f7a773300ec1 : WAPT/control
4a6e5031edc6e22a06cb5f12e89dea8738b88839c2cb99e2e7e0d9df345e2252 : WAPT/icon.png
423eba630776ba8a9a9922ffec8fa681472560d3511dbbc304529e5d667bcc5d : git.inf
6b2bff3cbd751d4537b42e09e2715b01a7121c18af3389ae4f84cda855a34e50 : luti.json
5f5f89bc78b9b3b91a3c9353e1fa55e8fec591f47f0c1efcaeefeab400927af4 : setup.py
136751b4095e0dd08f52fdfa14ceb6753031e063bb62a77d492c3434b86dc51e : update_package.py