Judulnya cukup menjelaskan semuanya.
Di repo lokal saya punya folder .git yang berisi kait saya. Saya menggunakan sumber Lua khusus saya untuk menulis versi saat ini dalam file di dalamnya. Kemudian di hook pra-komit saya punya:
#!/bin/sh
#
# An example hook script to verify what is about to be committed.
# Called by "git commit" with no arguments. The hook should
# exit with non-zero status after issuing an appropriate message if
# it wants to stop the commit.
#
# To enable this hook, rename this file to "pre-commit".
echo "START" >> E:/Desktop/tmp.txt
exec $LUA_HOME\\lua.exe ${PWD}\\hooks\\pre-commit.lua "${PWD}/lua/autorun/trackassembly_init.lua" "Rev." > E:/Desktop/tmp.txt
Saya punya dua file. Yang pertama saya melakukan perubahan aktual (file sumber). Yang kedua saya gunakan untuk menulis versi saat ini di (file versi).
Setiap kali saya menggunakan TortoiseGit dan melakukan:
1) Modify the source file
2) Repo Directory --> Right Click --> Git Commit "master"
Informasi tentang file sumber ditambahkan dalam indeks, tetapi tidak ada jejak file versi yang diubah dengan versi baru di dalamnya. Hal ini menyebabkan perbedaan antara copy pekerjaan dan file versi dan TortoiseGit menempatkan (!) pada direktori.
Menurut manualnya:
Hook pra-komit dijalankan terlebih dahulu, bahkan sebelum Anda mengetikkan pesan komit. Ini digunakan untuk memeriksa snapshot yang akan dikomit, untuk melihat apakah Anda melupakan sesuatu, untuk memastikan pengujian berjalan, atau untuk memeriksa apa pun yang perlu Anda periksa dalam kode. Keluar dari angka bukan nol dari hook ini akan membatalkan komit