GoGPT Best VPN GoSearch

OnWorks favicon

gitpkg - ອອນລາຍໃນຄລາວ

ແລ່ນ gitpkg ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີຜ່ານ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ນີ້ແມ່ນຄໍາສັ່ງ gitpkg ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator

ໂຄງການ:

NAME


gitpkg - ສົ່ງອອກຊຸດແຫຼ່ງ Debian ຈາກການປັບປຸງ git ທີ່ຖືກແຕ່ງຕັ້ງ

ສະຫຼຸບສັງລວມ


gitpkg ສາຂາ [ສາຂາ]

ລາຍລະອຽດ


If gitpkg ແມ່ນດໍາເນີນການໃນ a ໄປ(1) repo ກັບ 'ສາຂາ' ດຽວທີ່ລະບຸ, ຫຼັງຈາກນັ້ນມັນຈະເຮັດ a git-
ເກັບ ການ​ສົ່ງ​ອອກ​ຂອງ​ສາ​ຂາ​ທີ່​ DEB_DIR ໄດເລກະທໍລີ. ຖ້າຊຸດແມ່ນ Debian native
ມັນພຽງແຕ່ຈະສ້າງຊຸດແຫຼ່ງຈາກມັນ. ຖ້າຊຸດມີສະບັບ Debian, ຫຼັງຈາກນັ້ນ
orig tarball ຄາດວ່າຈະມີຢູ່ແລ້ວສໍາລັບມັນ. ຖ້າ orig tarball ບໍ່
ມີຢູ່ແລ້ວຫຼັງຈາກນັ້ນສິ່ງທີ່ເກີດຂຶ້ນຕໍ່ໄປແມ່ນຂຶ້ນກັບມູນຄ່າຂອງ gitpkg.create-fake-orig
ຕົວເລືອກການຕັ້ງຄ່າ (ອະທິບາຍຂ້າງລຸ່ມນີ້).

If gitpkg ຖືກເອີ້ນດ້ວຍສອງສາຂາທີ່ລະບຸ, ຫຼັງຈາກນັ້ນສາຂາທໍາອິດຈະຖືກສົ່ງອອກ
ເປັນແຫຼ່ງທີ່ສົມບູນ unpacked, ໃນຂະນະທີ່ສາຂາທີສອງຈະຖືກສົ່ງອອກສໍາລັບ
orig.tar.gz. ນີ້ອະນຸຍາດໃຫ້ການປ່ຽນແປງທ້ອງຖິ່ນທັງຫມົດໃນແຫຼ່ງທີ່ຈະຖືກບັນທຶກໄວ້ໃນຜົນໄດ້ຮັບ
diff.gz ຖ້າມີສາຂາຕົ້ນນ້ຳທີ່ບໍລິສຸດຢູ່ໃນບ່ອນເກັບມ້ຽນ. ຖ້າເປັນ orig tarball
ມີຢູ່ແລ້ວສໍາລັບສະບັບທີ່ 'ສາຂາ' ຫຼັງຈາກນັ້ນສິ່ງທີ່ເກີດຂຶ້ນຕໍ່ໄປແມ່ນຂຶ້ນກັບມູນຄ່າຂອງ
ໄດ້ gitpkg.force-overwrite-orig ຕົວເລືອກການຕັ້ງຄ່າ (ອະທິບາຍຂ້າງລຸ່ມນີ້).

ໄດ້ 'ສາຂາ' ຄວນ​ມີ​ສະ​ເຫມີ​ໄປ​ debian/ dir ແລະອາດຈະເປັນໃດໆ ໄມ້ຢືນຕົ້ນ ວັດຖຸທີ່ເປັນ
ຍອມຮັບໂດຍ git-archive(1). ໄດ້ 'ສາຂາ', ຖ້າສະຫນອງ, ປົກກະຕິແລ້ວບໍ່ຄວນມີ
debian/ dir.

CONFIGURATION OPTIONS


ເກືອບ​ທັງ​ຫມົດ gitpkg ການຕັ້ງຄ່າແມ່ນຈັດການໂດຍໃຊ້ git-config(1) ດຽວນີ້. ຕໍ່ໄປນີ້
ທາງ​ເລືອກ​ການ​ຕັ້ງ​ຄ່າ​ແມ່ນ​ສະ​ຫນັບ​ສະ​ຫນູນ​:

gitpkg.deb-dir
ອາດຈະຖືກຕັ້ງໃຫ້ override ໄດເລກະທໍລີປາຍທາງເລີ່ມຕົ້ນສໍາລັບແພັກເກດທີ່ສົ່ງອອກ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ '../deb-packages'. ມີໃຫ້ຕິດສະຄຣິບເປັນ DEB_DIR. ນີ້ອາດຈະເປັນ
overridden ໃນບັນທັດຄໍາສັ່ງທີ່ມີ --deb-dir=ເສັ້ນທາງ ທາງເລືອກ.

gitpkg.build-rootcmd
ອາດຈະຖືກຕັ້ງໃຫ້ override ຄໍາສັ່ງເລີ່ມຕົ້ນທີ່ໃຊ້ເພື່ອເອົາຮາກສໍາລັບການກໍ່ສ້າງຊຸດ
ການດໍາເນີນງານ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 'ຮາກປອມ'. ມີໃຫ້ຕິດສະຄຣິບເປັນ BUILD_ROOTCMD.

gitpkg.prebuild-target
ອາດຈະຖືກກໍານົດເປັນເປົ້າຫມາຍຫຼືເປົ້າຫມາຍຈາກ debian/ກົດລະບຽບ ເຊິ່ງຈະຖືກເອີ້ນຫຼັງຈາກ
ຕົ້ນໄມ້ແຫຼ່ງ debian ຖືກສົ່ງອອກ, ແຕ່ກ່ອນທີ່ຈະສ້າງຊຸດແຫຼ່ງ. ບາງ
ແພັກເກດອາດຈະໃຊ້ອັນນີ້ເພື່ອສ້າງໄຟລ໌ autoconf ຫຼືຄ້າຍຄືກັນ, ເຊິ່ງຄວນ
ໂດຍທົ່ວໄປແລ້ວບໍ່ໄດ້ຢູ່ໃນ repo, ແຕ່ວ່າຄວນຈະຢູ່ໃນຊຸດທີ່ແຈກຢາຍ. ໄດ້
ເປົ້າໝາຍຖືກເອີ້ນໂດຍໃຊ້ BUILD_ROOTCMD. ການນໍາໃຊ້ທົ່ວໄປສໍາລັບ hook ນີ້ຈະເປັນ
ໂທຫາຊຸດ'ເຮັດຄວາມສະອາດ' ເປົ້າ​ຫມາຍ. hook ນີ້ບໍ່ໄດ້ຖືກຕັ້ງເປັນຄ່າເລີ່ມຕົ້ນຕັ້ງແຕ່ gitpkg
0.18. ກ່ອນໜ້ານັ້ນມັນຕັ້ງເປົ້າໝາຍທີ່ສະອາດ. ມີໃຫ້ hook
scripts ເປັນ PREBUILD_TARGET.

gitpkg.orig-compressor
ອາດຈະຖືກຕັ້ງໃຫ້ລົບລ້າງການບີບອັດເລີ່ມຕົ້ນສຳລັບ package.orig.tar ທີ່ສົ່ງອອກແລ້ວ.
ຄ່າເລີ່ມຕົ້ນແມ່ນ 'gzip'. ສໍາລັບຮູບແບບ 3.0 ແພັກເກັດ, ຄ່າທີ່ຖືກຕ້ອງຍັງປະກອບມີ xz ແລະ
bzip2. ມີໃຫ້ຕິດສະຄຣິບເປັນ ORIG_COMPRESSOR.

gitpkg.orig-compress-level
ລະດັບການບີບອັດທາງເລືອກທີ່ຈະໃຊ້ກັບ gitpkg.orig-compressor. 1 ປົກກະຕິແລ້ວແມ່ນ
ໄວທີ່ສຸດ ແລະ 9 ປົກກະຕິແລ້ວແມ່ນນ້ອຍທີ່ສຸດ, ມີລາຍລະອຽດທີ່ຊັດເຈນຂອງທຸກສິ່ງທຸກຢ່າງ
ລະຫວ່າງການຂຶ້ນກັບເຄື່ອງອັດທີ່ເລືອກ. ຄ່າເລີ່ມຕົ້ນແມ່ນບໍ່ໄດ້ຕັ້ງ (ເຊິ່ງຈະໃຊ້
ໃດກໍ່ຕາມຄ່າເລີ່ມຕົ້ນຂອງ compressor ແມ່ນ). ມີໃຫ້ຕິດສະຄຣິບເປັນ
ORIG_COMPRESS_LEVEL.

gitpkg.deb-compressor
ອາດຈະຖືກຕັ້ງໃຫ້ລົບລ້າງການບີບອັດເລີ່ມຕົ້ນທີ່ໃຊ້ໂດຍ dpkg-ແຫຼ່ງ(1) ສໍາລັບການສົ່ງອອກ
ຊຸດ. ຄ່າເລີ່ມຕົ້ນ (ຖ້າບໍ່ໄດ້ຕັ້ງ) ແມ່ນໃຊ້ອັນໃດກໍໄດ້ dpkg-ແຫຼ່ງ ຕ້ອງ​ການ​ນໍາ​ໃຊ້​. ສໍາລັບ
ຮູບແບບ 3.0 ແພັກເກັດ, ຄ່າທີ່ຖືກຕ້ອງຍັງປະກອບມີ xz ແລະ bzip2. ມີໃຫ້ hook
scripts ເປັນ DEB_COMPRESSOR.

gitpkg.deb-compress-level
ລະດັບການບີບອັດທາງເລືອກທີ່ຈະໃຊ້ກັບ gitpkg.deb-compressor. 1 ປົກກະຕິແລ້ວແມ່ນ
ໄວທີ່ສຸດ ແລະ 9 ປົກກະຕິແລ້ວແມ່ນນ້ອຍທີ່ສຸດ, ມີລາຍລະອຽດທີ່ຊັດເຈນຂອງທຸກສິ່ງທຸກຢ່າງ
ລະຫວ່າງການຂຶ້ນກັບເຄື່ອງອັດທີ່ເລືອກ. ຄ່າເລີ່ມຕົ້ນແມ່ນບໍ່ໄດ້ຕັ້ງ (ເຊິ່ງຈະໃຊ້
ສິ່ງໃດກໍ່ຕາມ dpkg-ແຫຼ່ງ ຄ່າເລີ່ມຕົ້ນແມ່ນ, ໃນປັດຈຸບັນ '9'). ມີໃຫ້ຕິດສະຄຣິບເປັນ
DEB_COMPRESS_LEVEL.

gitpkg.dpkg-source
ອາດຈະຖືກຕັ້ງໃຫ້ຜ່ານທາງເລືອກທີ່ຕົນເອງມັກ verbatim ກັບ dpkg-ແຫຼ່ງ(1​) ໃນ​ເວ​ລາ​ທີ່​ການ​ກໍ່​ສ້າງ​
ຊຸດແຫຼ່ງ. ໃຊ້ຢ່າງລະມັດລະວັງແລະມີຄວາມສ່ຽງຂອງທ່ານເອງ. ເພື່ອຜ່ານຫຼາຍທາງເລືອກ
to dpkg-ແຫຼ່ງ ທ່ານຕ້ອງກໍານົດທາງເລືອກນີ້ຫຼາຍຄັ້ງ (ie. ການນໍາໃຊ້ ໄປ config --ຕື່ມ
ສໍາ​ລັບ​ແຕ່​ລະ​ທາງ​ເລືອກ​) ເນື່ອງ​ຈາກ​ຄວາມ​ຕ້ອງ​ການ​ວົງ​ຢືມ​ເຮັດ​ໃຫ້​ຫົວ​ບໍ່​ດັ່ງ​ນັ້ນ​ສໍາ​ລັບ​ທາງ​ເລືອກ​ດັ່ງ​ກ່າວ​
ເປັນ "--format=3.0 (native)". ຄ່າເລີ່ມຕົ້ນແມ່ນຫວ່າງເປົ່າ. ມີໃຫ້ຕິດສະຄຣິບເປັນ
array indexed DPKG_SOURCE_OPTS. ຢ່າໃຊ້ອັນນີ້ເພື່ອຕັ້ງຄ່າ dpkg-ແຫຼ່ງ(1​) -Z or -z
ທາງເລືອກ, ພວກເຂົາຄວນຈະຖືກຕັ້ງຄ່າແທນທີ່ຈະໃຊ້ deb-compressor ແລະ deb-compress-level
ທາງ​ເລືອກ​ຕາມ​ລໍາ​ດັບ​. ນີ້ອາດຈະຖືກ overridden ໃນເສັ້ນຄໍາສັ່ງທີ່ມີ
--dpkg-source=arg ທາງເລືອກ, ເຊິ່ງເຊັ່ນດຽວກັນຕ້ອງໄດ້ຮັບການຜ່ານຫຼາຍຄັ້ງເພື່ອກໍານົດ
ຫຼາຍທາງເລືອກ.

gitpkg.create-fake-orig
ບາງຄັ້ງທັງແຫຼ່ງ upstream ແລະ debian ສະຫນັບສະຫນູນຢ່າງແທ້ຈິງແມ່ນ intermingled ເປັນ
ສາຂາດຽວຂອງ repo ແຕ່ທ່ານຍັງຕ້ອງການສ້າງຊຸດ 'ບໍ່ແມ່ນພື້ນເມືອງ' ​​ຈາກ
ມັນ. gitpkg ສາມາດປອມແປງ orig tarball ຈາກຕົ້ນໄມ້ດັ່ງກ່າວອອກຈາກທຸກສິ່ງທຸກຢ່າງແຕ່ໄດ້
ເນື້ອໃນຂອງ debian / directory. ການຕັ້ງຄ່າຕົວເລືອກນີ້ເປັນ 'ຄວາມຈິງ' ເຮັດໃຫ້ສິ່ງນັ້ນ
ພຶດຕິກຳເປັນຄ່າເລີ່ມຕົ້ນຖ້າຕົ້ນໄມ້ດຽວຖືກສົ່ງໄປ gitpkg ແລະ​ບໍ່​ມີ​ທີ່​ສອດ​ຄ້ອງ​ກັນ​
orig tarball ຖືກພົບເຫັນ. ການຕັ້ງຄ່າຕົວເລືອກນີ້ເປັນ 'false' ຈະເຮັດໃຫ້ gitpkg ລົ້ມເຫລວ,
ການ​ລາຍ​ງານ​ຄວາມ​ຜິດ​ພາດ​, ຖ້າ​ຫາກ​ວ່າ treeish ດຽວ​ແມ່ນ​ຜ່ານ​ແລະ​ບໍ່​ມີ orig tarball ກັບ​
ສະບັບທີ່ຖືກຕ້ອງມີຢູ່ແລ້ວສໍາລັບມັນ (ແລະບໍ່ມີອັນໃດຖືກດຶງມາໂດຍສະຄິບ hook
ກ່ອນທີ່ຈະມີຄວາມຈໍາເປັນ). ຖ້າຕົວເລືອກນີ້ບໍ່ໄດ້ຖືກຕັ້ງ, ຜູ້ໃຊ້ຈະຖືກເຕືອນ
ສໍາລັບສິ່ງທີ່ຖືກຕ້ອງທີ່ຈະເຮັດຖ້າສະຖານະການນີ້ເກີດຂື້ນ. ບໍ່ໄດ້ຕັ້ງຄ່າເລີ່ມຕົ້ນ. ມີ
ເພື່ອເຊື່ອມຕໍ່ສະຄຣິບເປັນ CREATE_FAKE_ORIG.

gitpkg.force-overwrite-orig
ທາງເລືອກນີ້ຄວບຄຸມພຶດຕິກໍາຂອງ gitpkg ຖ້າ 'ຕົ້ນກຳເນີດ' ເປັນຕົ້ນໄມ້
ລະບຸໄວ້ ແລະ orig.tar ທີ່ສອດຄ້ອງກັນສໍາລັບ 'ສາຂາ' ມີຢູ່ແລ້ວ. ຖ້ານີ້
ຖືກຕັ້ງເປັນ 'ຄວາມຈິງ', ຫຼັງຈາກນັ້ນ orig.tar ຈະຖືກຂຽນທັບດ້ວຍແຫຼ່ງ repo (ເພື່ອ
ໃຊ້ຄືນ orig.tar ທີ່ມີຢູ່ແລ້ວພຽງແຕ່ໂທຫາ gitpkg ມີພຽງແຕ່ສາຂາ Debian ດຽວເທົ່ານັ້ນ
treeish ທີ່​ທ່ານ​ຕ້ອງ​ການ​ທີ່​ຈະ​ສົ່ງ​ອອກ​)​. ຖ້າອັນນີ້ຖືກຕັ້ງເປັນ 'ຜິດ', ມັນແມ່ນຄວາມຜິດພາດທີ່ຍາກທີ່ຈະເຮັດ
ພະຍາຍາມສົ່ງອອກແຫຼ່ງຕົ້ນສະບັບອີກເທື່ອຫນຶ່ງເມື່ອ orig.tar ມີຢູ່ແລ້ວ, ແລະ
gitpkg ຈະຢຸດເຊົາແລະ scold ທ່ານຖ້າຫາກວ່າທ່ານພະຍາຍາມ. ຖ້າບໍ່ໄດ້ຕັ້ງ, ທ່ານຈະຖືກເຕືອນ
ກ່ຽວກັບວ່າຈະຂຽນທັບຫຼືບໍ່, ແລະການກໍ່ສ້າງຈະສືບຕໍ່ໃຊ້ອັນໃດກໍໄດ້
ຂອງສອງອັນທີ່ທ່ານເລືອກ. ບໍ່ໄດ້ຕັ້ງຄ່າເລີ່ມຕົ້ນ. ມີໃຫ້ຕິດສະຄຣິບເປັນ
FORCE_OVERWRITE_ORIG.

gitpkg.keep-unpacked-source
ທາງ​ເລືອກ​ນີ້​ຈະ​ຄວບ​ຄຸມ​ບໍ່​ວ່າ​ຈະ​ເປັນ​ຫຼື​ບໍ່​ໄດ້​ລະ​ບົບ​ແຫຼ່ງ unpacked ຖືກ​ເກັບ​ຮັກ​ສາ​ໄວ້​ຫຼັງ​ຈາກ​
ແພັກເກັດການສົ່ງອອກ ແລະທາງອອກໄດ້ສຳເລັດແລ້ວ. ຖ້າຕັ້ງເປັນ
'ຄວາມຈິງ', ແຫຼ່ງ unpacked ຈະຖືກເກັບຮັກສາໄວ້. ຖ້າຕັ້ງເປັນ 'ຜິດ' ຫຼືບໍ່ໄດ້ຕັ້ງນັ້ນ
ໄດເລກະທໍລີຈະຖືກເອົາອອກເປັນການດໍາເນີນງານສຸດທ້າຍກ່ອນ gitpkg ອອກໄປຖ້າທັງໝົດກ່ອນ
ການ​ດໍາ​ເນີນ​ງານ​ສໍາ​ເລັດ​ສົບ​ຜົນ​ສໍາ​ເລັດ​. ບໍ່ໄດ້ຕັ້ງຄ່າເລີ່ມຕົ້ນ. ມີໃຫ້ຕິດສະຄຣິບເປັນ
KEEP_UNPACKED_SOURCE. ນີ້ອາດຈະຖືກ overridden ໃນເສັ້ນຄໍາສັ່ງທີ່ມີ
--keep-unpacked-source=bool ທາງເລືອກ (ບ່ອນທີ່ 'ບໍ່' ຫຼື 'ບໍ່ຖືກຕ້ອງ' ຈະບໍ່ຮັກສາມັນ, ແລະໃດໆ
ຄ່າອື່ນໆ, ລວມທັງບໍ່ມີຫຍັງ, ຈະ).

SCRIPT ກອກ


ສະຄຣິບທີ່ຜູ້ໃຊ້ກຳນົດໄວ້ສາມາດຖືກເອີ້ນຈາກຈຸດຫຼາຍຈຸດໃນລະຫວ່າງການສ້າງຊຸດ
ຂະບວນການ. ພວກເຂົາເຈົ້າແມ່ນແຫຼ່ງເຂົ້າໄປໃນ gitpkg ເປັນ snippets bash shell, ໃນກໍລະນີຫຼາຍທີ່ສຸດໃນ a
subshell, ດັ່ງນັ້ນພວກເຂົາສາມາດອ່ານຕົວແປຂອງລັດແລະດໍາເນີນການພາຍນອກ, ແຕ່ບໍ່ສາມາດປ່ຽນແປງໄດ້
ການຕັ້ງຄ່າແລ່ນເມື່ອການກໍ່ສ້າງກໍາລັງດໍາເນີນຢູ່. ຖ້າ hook ກັບຄືນມາດ້ວຍການທີ່ບໍ່ແມ່ນສູນ
ສະຖານະພາບ, ຫຼັງຈາກນັ້ນ gitpkg ຈະຖືກຍົກເລີກ. (Hooks ທີ່ຢຸດ gitpkg ຄວນໃຊ້ເວລາບາງ
ບົວລະບັດບໍ່ໃຫ້ອອກຈາກຫຼາຍລັງກິນອາຫານ, ແຕ່ຍັງຄວນຈະປ່ອຍໃຫ້ຂໍ້ຄຶດພຽງພໍ intact ສໍາລັບ
ຜູ້​ໃຊ້​ໃນ​ການ​ວິ​ນິດ​ໄສ​ແລະ​ແກ້​ໄຂ​ບັນ​ຫາ​ໃດ​ຫນຶ່ງ​. ຂໍ້​ຄວາມ​ຜິດ​ພາດ​ທີ່​ເປັນ​ປະ​ໂຫຍດ​ແລະ​ໃຫ້​ຂໍ້​ມູນ​
ຄວນຖືກເປືອກໃສ່ stderr ກ່ອນທີ່ຈະອອກດ້ວຍວິທີນີ້.)

Hook scripts ອາດຈະຖືກຕິດຕັ້ງຢູ່ໃນລະບົບໂຮດພາຍນອກຂອງຕົ້ນໄມ້ repo, ຫຼືມາຈາກ
ສະບັບຄວບຄຸມໄຟລ໌ໃນ repo ຕົວຂອງມັນເອງ. ວິທີການທັງສອງມີຄວາມໄດ້ປຽບແລະຄວາມສ່ຽງສໍາລັບ
ກໍລະນີການນໍາໃຊ້ທີ່ແຕກຕ່າງກັນ. Hook scripts ຖືກເປີດໃຊ້ໂດຍຜູ້ເບິ່ງແຍງທ້ອງຖິ່ນ, ໂດຍການຕັ້ງຄ່າແຕ່ລະຄົນ
ທີ່ກ່ຽວຂ້ອງ git-config(1​) ທາງ​ເລືອກ​ທີ່​ມີ​ເສັ້ນ​ທາງ​ໄປ​ຫາ script ທີ່​ຈະ​ປະ​ຕິ​ບັດ​. ເສັ້ນທາງອາດຈະເປັນ
absolute ຫຼືພີ່ນ້ອງກັບ directory ທີ່ hook ເອີ້ນວ່າມາຈາກ. ຖ້າຕັ້ງ hook,
ບົດຂຽນ ຕ້ອງ ມີຢູ່ໃນເວລາທີ່ມັນຖືກເອີ້ນວ່າ. ຄວນລະມັດລະວັງເພື່ອໃຫ້ພວກມັນສາມາດນຳໃຊ້ໄດ້ເທົ່ານັ້ນ
ໂດຍຕົ້ນໄມ້ແຫຼ່ງທີ່ເຊື່ອຖືໄດ້ໃນເວລາທີ່ເຊື່ອມຕໍ່ເຂົ້າໄປໃນໄຟລ໌ໃນ repo ຕົວຂອງມັນເອງ. ປົກກະຕິແລ້ວທ່ານຄວນ
ເປີດໃຊ້ພວກມັນບົນພື້ນຖານຕໍ່ repo ກັບ git-config(1​) ແທນ​ທີ່​ຈະ​ເປັນ​ -- ໂລກ or --ລະບົບ
ລະດັບ.

A ສັ້ນ ຄຳ ຕັກເຕືອນ ຕໍ່ ໄດ້ຮັບ ຕິດກັບ:
ທ່ານຄວນຫຼີກລ້ຽງການຈັດລຽງການຕິດຢູ່ໃນຊຸດທີ່ສັບສົນກາຍເປັນສິ່ງຈໍາເປັນສໍາລັບການສົ່ງອອກ
ແຫຼ່ງຊຸດຂອງທ່ານ. ຖ້າທ່ານຕ້ອງການໃຫ້ພວກເຂົາສ້າງຊຸດໂດຍສະເພາະຢ່າງຖືກຕ້ອງ, ແລະຕ້ອງການ
ສະບັບທີ່ເຂັ້ມງວດຜູກມັດກັບແຫຼ່ງທີ່ຖືກປ່ອຍອອກມາ, ແລະພວກມັນບໍ່ເປັນປະໂຫຍດຕໍ່ຄົນອື່ນ
package ທັງຫມົດ ... ຫຼັງຈາກນັ້ນທ່ານກໍາລັງຂ້ອນຂ້າງອາດຈະເຮັດບາງສິ່ງບາງຢ່າງ, ຫຼືຫຼາຍສິ່ງ, ຂ້ອນຂ້າງ
ຜິດ. ຖ້າບໍ່ດັ່ງນັ້ນ, ທ່ານກໍາລັງຢູ່ໃນ shit ເລິກດັ່ງກ່າວເຮັດວຽກປະມານບາງລະບົບການກໍ່ສ້າງທີ່ແຕກຫັກທີ່ທ່ານ
ບໍ່ຕ້ອງການໃຫ້ຂ້ອຍບອກເຈົ້າກ່ຽວກັບມັນ. ໃນກໍລະນີໃດກໍ່ຕາມ, ຜູ້ເບິ່ງແຍງທ້ອງຖິ່ນຕ້ອງເປີດໃຊ້ hook ຂອງທ່ານ
ກ່ອນທີ່ພວກເຂົາສາມາດແລ່ນໄດ້, ດັ່ງນັ້ນຖ້າທ່ານຕ້ອງການເປັນມິດກັບຜູ້ອື່ນ (ແລະຕົວທ່ານເອງ), ຫຼັງຈາກນັ້ນຮັກສາ
ການຫຸ້ມຫໍ່ 'ປົກກະຕິ' ເຮັດວຽກຢ່າງເຂັ້ມງວດພາຍໃນເຄື່ອງມືການກໍ່ສ້າງຊຸດປົກກະຕິ, ແລະອອກຈາກ
gitpkg hooks ຟຣີສໍາລັບຜູ້ເບິ່ງແຍງທ້ອງຖິ່ນອື່ນໆເພື່ອຫໍ່ອັດຕະໂນມັດໃດກໍ່ຕາມ ພວກເຂົາເຈົ້າ ຕ້ອງການ
ອ້ອມ​ຂ້າງ​ສິ່ງ​ຂອງ​. ຖ້າສະບັບສະເພາະຂອງແຫຼ່ງຊຸດຕ້ອງການສະເພາະບາງອັນ
ການກະ ທຳ ທີ່ເກີດຂື້ນກັບມັນກ່ອນການສ້າງຊຸດແຫຼ່ງ ທຳ ອິດ, ຈາກນັ້ນ PREBUILD_TARGET
ທາງ​ເລືອກ​ຈາກ​ຂ້າງ​ເທິງ​ແມ່ນ​ຫຼາຍ​ທີ່​ສຸດ​ອາດ​ຈະ​ເປັນ​ສິ່ງ​ທີ່​ທ່ານ​ຕ້ອງ​ການ​ແທນ​ທີ່​ຈະ​ເປັນ​ຫນຶ່ງ​ໃນ hooks ເຫຼົ່າ​ນີ້​. ອື່ນໆ
ປະຊາຊົນສາມາດໃຊ້ມັນອີກເທື່ອຫນຶ່ງໃນພາຍຫຼັງໂດຍບໍ່ຈໍາເປັນຕ້ອງມີ gitpkg ປະມານ. ຈຸດປະສົງແມ່ນເພື່ອ
ນີ້​ເພື່ອ​ຊ່ວຍ​ໃຫ້​ທ່ານ​. ສໍາລັບຄຸນຄ່າບາງຢ່າງຂອງເຈົ້າທັງໝົດ. ສະນັ້ນຈົ່ງລະມັດລະວັງເພື່ອຫຼີກເວັ້ນການປ່ອຍໃຫ້ມັນ
ໝຸນຄົນອື່ນໆຖ້າ hook ບໍ່ໄດ້ຖືກເອີ້ນ, ແລະ/ຫຼືໃຫ້ພວກເຂົາຮູ້ວ່າພວກເຂົາຕ້ອງການຫຍັງ
ເຮັດແທນຖ້າມັນບໍ່ແມ່ນ. ແລ້ວ, ມີ barb ທີ່ຈະສັງເກດເບິ່ງອອກ, ສະນັ້ນກັບຄືນໄປບ່ອນຈຸດ
ອີກເທື່ອຫນຶ່ງ:

Hook ຈຸດ
ຈຸດ hook ທີ່​ມີ​ຢູ່​ແມ່ນ​ລະ​ບຸ​ໄວ້​ຂ້າງ​ລຸ່ມ​ນີ້​ໃນ​ປະ​ມານ​ຄໍາ​ສັ່ງ​ທີ່​ເຂົາ​ເຈົ້າ​ມັກ​ຈະ​ເປັນ​
ຮຽກຮ້ອງ:

gitpkg.package-config-hook
hook ນີ້ແລ່ນຢູ່ໃນໄດເລກະທໍລີລະດັບສູງສຸດຂອງ repo gitpkg ໄດ້ຖືກຮຽກຮ້ອງໃນ, ກ່ອນຫນ້ານີ້
ກັບການດໍາເນີນງານໃດໆທີ່ເກີດຂື້ນ, ກັບທັງຫມົດ git-config(1​) ທາງ​ເລືອກ​ທີ່​ມາ​ທີ່​ມີ​ໃຫ້​
ມັນ. ບໍ່ມີຂໍ້ມູນລາຍລະອຽດກ່ຽວກັບຊຸດຕົວມັນເອງແມ່ນມີຢູ່ໃນ hook ໄດ້
ສະ​ພາບ​ແວດ​ລ້ອມ​ຍັງ, ບໍ່​ແມ່ນ​ແຕ່​ຊື່​ຫຼື​ສະ​ບັບ​ຂອງ​ມັນ, ມີ​ພຽງ​ແຕ່ tree-ish(es) ທີ່ gitpkg
ຜູ້​ໃຊ້​ໄດ້​ຜ່ານ​ການ​, ແຕ່ hook ອາດ​ຈະ​ດໍາ​ເນີນ​ການ​ການ​ກວດ​ສອບ​ຂອງ​ຕົນ​ເອງ​ໂດຍ​ອີງ​ໃສ່​ການ​
ໃນປັດຈຸບັນ (ອາດຈະເປັນ 'ເປື້ອນ') ເນື້ອໃນຂອງຕົ້ນໄມ້ທີ່ເຮັດວຽກ gitpkg ໄດ້​ຖືກ​ຮຽກ​ຮ້ອງ​ໃນ.

hook ນີ້​ແມ່ນ​ສາ​ມາດ​ປັບ​ປຸງ​ແກ້​ໄຂ​ໄດ້​ gitpkg ຕົວແປການຕັ້ງຄ່າຕໍ່ໄປ
ການດໍາເນີນງານ. ມັນສາມາດປະຕິບັດການດໍາເນີນງານໃນ repo ຖ້າຈໍາເປັນ, ແຕ່ເນື່ອງຈາກວ່າມັນຕ້ອງການ
ໃຫ້ຄໍາຫມັ້ນສັນຍາກັບ repo ກ່ອນທີ່ມັນຈະຖືກເອີ້ນວ່າ, ມັນອາດຈະບໍ່ເປັນປະໂຫຍດຫຼາຍ
ຢູ່ທີ່ນີ້ໃນການປະຕິບັດ. ໂດຍພື້ນຖານແລ້ວ, ມັນສາມາດເຮັດຫຍັງໄດ້ຕາມໃຈ, ມັນເປັນພຽງແຕ່ເປືອກ
script, ບໍ່ມີຫຍັງອີກແດ່ໄດ້ເລີ່ມຕົ້ນແທ້ໆ, ແລະມັນໄດ້ຖືກນໍາມາສູ່ຈຸດສູງສຸດ
ລະດັບຫອຍຂອງ gitpkg.

ການດໍາເນີນງານຂອງມັນແມ່ນແຕກຕ່າງຈາກ admin-config-hook ໃນພຽງແຕ່ຫນຶ່ງເຄົາລົບ, ເສັ້ນທາງ
ກັບ hook ນີ້ ຕ້ອງ ກ່ຽວຂ້ອງກັບ TLD ຂອງ repo, ແລະການດັດແກ້ໄຟລ໌
ທີ່ ຈະ ໄດ້ ຮັບ ການ ກວດ ກາ ອອກ ຈາກ 'ສາຂາ' tree-ish ວ່າ gitpkg ແມ່ນ
ຮ້ອງຂໍໃຫ້ສົ່ງອອກ. ໄຟລ໌ຕ້ອງມີຢູ່ໃນລຸ້ນນັ້ນຢູ່ໃນເສັ້ນທາງທີ່ໃຫ້.

ມີໃຫ້ຕິດສະຄຣິບເປັນ PACKAGE_CONFIG_HOOK.

gitpkg.admin-config-hook
ສຽງນີ້ແມ່ນດໍາເນີນການຫຼັງຈາກ package-config-hook ກັບຄືນມາ, ແລະແຕກຕ່າງຈາກມັນຢູ່ໃນ
ປະຕິບັດງານພຽງແຕ່ໂດຍການອ່ານໄຟລ໌ຄົງທີ່ຈາກລະບົບໄຟລ໌ໃນປະຈຸບັນແທນທີ່ຈະ
ການສະກັດເອົາເວີຊັນທີ່ຄວບຄຸມຈາກ repo ທີ່ຖືກສົ່ງອອກ.

ນີ້ສາມາດຖືກນໍາໃຊ້ໂດຍຜູ້ເບິ່ງແຍງທ້ອງຖິ່ນເພື່ອ override ທາງເລືອກຊຸດໃດນຶ່ງ, ນັ້ນ
ອາດຈະຖືກກໍານົດໂດຍ package-config-hook, ດ້ວຍການຕັ້ງຄ່າສະເພາະຂອງເວັບໄຊ.
ນີ້ແມ່ນການຄວບຄຸມນະໂຍບາຍ, ບໍ່ແມ່ນຄວາມປອດໄພ. ຄວາມ​ປອດ​ໄພ​ແມ່ນ​ຫມົດ​ໃນ​ເວ​ລາ​ທີ່​ທ່ານ​ໃຫ້​
ໄດ້ package-config-hook ແລ່ນ, ນີ້ພຽງແຕ່ຊ່ວຍໃຫ້ທ່ານ override ມັນໂດຍບໍ່ມີການປອມແປງ
ເຖິງຄໍາຫມັ້ນສັນຍາໃຫມ່ການປ່ຽນແປງ hook ຊຸດ.

ນີ້ແມ່ນ hook ສຸດທ້າຍທີ່ຈະດໍາເນີນການທີ່ສາມາດແກ້ໄຂໄດ້ gitpkg ການ​ຕັ້ງ​ຄ່າ​ແລະ​
ຕັ້ງຄ່າທາງເລືອກສະພາບແວດລ້ອມທີ່ຈະເຫັນໄດ້ໂດຍ hooks ຕໍ່ມາ. ມີໃຫ້ hook
scripts ເປັນ ADMIN_CONFIG_HOOK. ນີ້ອາດຈະຖືກ overridden ໃນເສັ້ນຄໍາສັ່ງທີ່ມີ
--admin-config-hook=ເສັ້ນທາງ ທາງເລືອກ.

gitpkg.pre-export-hook
hook ນີ້ແລ່ນຢູ່ໃນໄດເລກະທໍລີລະດັບເທິງຂອງ repo, ຫຼັງຈາກຊື່ຊຸດແລະ
ສະບັບໄດ້ຖືກກໍານົດ, ແລະມີການຕັ້ງຄ່າຊຸດສຸດທ້າຍລວມທັງ
tweaking ໃດໆໂດຍ hooks ທີ່ຜ່ານມາ. ມັນບໍ່ສາມາດປ່ຽນຕົວເລືອກການຕັ້ງຄ່າໃດໆ,
ພຽງແຕ່ປະຕິບັດໃຫ້ເຂົາເຈົ້າຫຼືຢຸດເຊົາ gitpkg.

ນີ້ສາມາດຖືກນໍາໃຊ້ເພື່ອເຮັດສິ່ງຕ່າງໆເຊັ່ນ invoke pristine-tar ຫຼື prefetch orig ທີ່ມີຢູ່ແລ້ວ
tarball ຈາກບາງແຫຼ່ງຕ່າງປະເທດ. ມັນອາດຈະປະຕິບັດການດໍາເນີນງານໃນ repo ຖ້າມີ
ດັ່ງກ່າວແມ່ນຕ້ອງການ, ຫຼືການກວດສອບນາທີສຸດທ້າຍອື່ນໆທີ່ຕ້ອງເຮັດກ່ອນທີ່ພວກເຮົາຈະ
ຕົວຈິງແລ້ວໄດ້ຮັບກ່ຽວກັບວຽກງານຂອງການສົ່ງອອກແຫຼ່ງທີ່ພວກເຮົາຕ້ອງການຫຸ້ມຫໍ່.

ມີໃຫ້ຕິດສະຄຣິບເປັນ PRE_EXPORT_HOOK.

gitpkg.deb-export-hook
hook ນີ້ແລ່ນຢູ່ໃນບັນຊີລະດັບສູງສຸດຂອງແຫຼ່ງ debian ສົ່ງອອກ,
ທັນທີຫຼັງຈາກແຫຼ່ງໄດ້ຖືກສົ່ງອອກຈາກຄໍາຮ້ອງຂໍ ໄມ້ຢືນຕົ້ນ, ແລະ
ທັນທີກ່ອນທີ່ຈະໄດ້ PREBUILD_TARGET ຖືກຮຽກຮ້ອງ (ຖ້າສະຫນອງໃຫ້). ມັນບໍ່ສາມາດ
ປ່ຽນແປງຕົວເລືອກການຕັ້ງຄ່າໃດໆ, ພຽງແຕ່ປະຕິບັດໃຫ້ເຂົາເຈົ້າຫຼືຢຸດ gitpkg. ຖ້ານີ້
hook ຢຸດຕິ gitpkg, ໄດເລກະທໍລີແຫຼ່ງທີ່ສົ່ງອອກຈະຖືກປະໄວ້ໃນລະບົບ
ສໍາ​ລັບ​ຜູ້​ໃຊ້​ໃນ​ການ​ກວດ​ສອບ​. ການຮຽກຮ້ອງຕໍ່ມາຂອງ gitpkg ສໍາລັບການປ່ອຍດຽວກັນ
ສະບັບພາສາຈະຂຽນທັບມັນ. ມີໃຫ້ຕິດສະຄຣິບເປັນ DEB_EXPORT_HOOK.

gitpkg.orig-export-hook
hook ນີ້ແລ່ນຢູ່ໃນລາຍຊື່ລະດັບສູງສຸດຂອງແຫຼ່ງ 'upstream' ທີ່ສົ່ງອອກ,
ທັນທີຫຼັງຈາກແຫຼ່ງໄດ້ຖືກສົ່ງອອກຈາກສະຫນອງໃຫ້ ໄມ້ຢືນຕົ້ນ, ແລະ
ກ່ອນທີ່ຈະຖືກບີບອັດເຂົ້າໄປໃນຖັງຂີ້ເຫຍື້ອ. ມັນບໍ່ສາມາດປ່ຽນແປງການຕັ້ງຄ່າໃດໆ
ທາງເລືອກ, ພຽງແຕ່ປະຕິບັດໃຫ້ເຂົາເຈົ້າຫຼືຢຸດເຊົາ gitpkg. ຖ້າ hook ນີ້ສິ້ນສຸດລົງ gitpkg,
ໄດເລກະທໍລີແຫຼ່ງທີ່ສົ່ງອອກຈະຖືກປະໄວ້ໃນລະບົບເພື່ອໃຫ້ຜູ້ໃຊ້ກວດສອບ.
ການຮຽກຮ້ອງຕໍ່ມາຂອງ gitpkg ສໍາລັບລຸ້ນລຸ້ນດຽວກັນຈະຂຽນທັບມັນ
ເຖິງແມ່ນວ່າ.

hook ນີ້ແມ່ນ ພຽງແຕ່ ຮຽກວ່າ 'ຕົ້ນກຳເນີດ' ຕົວຈິງແລ້ວແມ່ນສົ່ງອອກມາຈາກ
ຄັງເກັບມ້ຽນ. ຖ້າພົບ orig.tar ທີ່ມີຢູ່ແລ້ວຫຼືຖືກສ້າງຂື້ນໂດຍບາງຄົນ
hook ກ່ອນຫນ້ານີ້ (ແລະມັນບໍ່ໄດ້ຖືກຂຽນທັບ, ເບິ່ງ force-overwrite-orig ຂ້າງເທິງ),
ຫຼັງ​ຈາກ​ນັ້ນ​, ການ​ດໍາ​ເນີນ​ງານ hook ນີ້​ຈະ​ປະ​ຕິ​ບັດ​ແມ່ນ​ຄາດ​ວ່າ​ຈະ​ໄດ້​ເກີດ​ຂຶ້ນ​ແລ້ວ​
ສໍາລັບ tarball ນີ້ແລະມັນຖືກຂ້າມ.

ມັນບໍ່ປອດໄພທີ່ຈະສົມມຸດວ່າ hook ນີ້ຈະຖືກປະຕິບັດກ່ອນຫຼືຫຼັງຈາກ deb-
ສົ່ງອອກ-hook, ແລະໃນຄວາມເປັນຈິງມັນອາດຈະດໍາເນີນການຂະຫນານກັບມັນຢູ່ໃນບາງຈຸດໃນ
ອະນາຄົດ. ພວກເຂົາເຈົ້າທັງສອງຈະຖືກເຂົ້າໄປໃນຫຼັງຈາກນັ້ນ pre-export-hook ກັບຄືນ, ແລະ exit-hook
ຈະບໍ່ເລີ່ມຕົ້ນຈົນກ່ວາ (ຢ່າງຫນ້ອຍ) ຫຼັງຈາກທັງສອງໄດ້ກັບຄືນມາ. ມີຫຍັງເກີດຂຶ້ນອີກໃນ
ກາງຂອງສິ່ງທີ່ພວກເຮົາບໍ່ໄດ້ສັນຍາຢ່າງຫນັກແຫນ້ນກ່ຽວກັບຂັ້ນຕອນນີ້.

ມີໃຫ້ຕິດສະຄຣິບເປັນ ORIG_EXPORT_HOOK.

gitpkg.exit-hook
hook ນີ້ແລ່ນຢູ່ໃນໄດເລກະທໍລີທີ່ຊຸດ .dsc ຖືກຝາກໄວ້ໂດຍ dpkg-
ແຫຼ່ງ(1), ຫຼັງຈາກທັງຫມົດພາຍໃນ gitpkg ການດໍາເນີນງານໄດ້ສໍາເລັດສົບຜົນສໍາເລັດ. ມັນ
ຊ້າເກີນໄປທີ່ຈະປ່ຽນແປງທາງເລືອກການຕັ້ງຄ່າໃດໆ, ຫຼືແມ້ກະທັ້ງການຢຸດເຊົາ gitpkg ແທ້.
ເຈົ້າສາມາດເຮັດສິ່ງທີ່ທ່ານຕ້ອງການໄດ້ຈາກອັນນີ້, ສິ່ງໃດກໍ່ຕາມທີ່ຜິດພາດ
ນີ້ແມ່ນການດໍາເນີນການຂອງທ່ານເອງ. ມີໃຫ້ຕິດສະຄຣິບເປັນ EXIT_HOOK. ນີ້ອາດຈະເປັນ
overridden ໃນບັນທັດຄໍາສັ່ງທີ່ມີ --exit-hook=ເສັ້ນທາງ ທາງເລືອກ.

Hook ສະພາບແວດລ້ອມ
ຕົວແປຕໍ່ໄປນີ້ແມ່ນໃຫ້ສໍາລັບ hook scripts, ນອກເຫນືອໄປຈາກທີ່ແລ້ວ
ຈັດເປັນເງົາ ກ git-config ທາງ​ເລືອກ​ຈາກ​ຂ້າງ​ເທິງ​. ບໍ່ແມ່ນທັງໝົດຂອງພວກເຂົາແມ່ນຖືກຕ້ອງ/ເປັນປະໂຫຍດຢູ່
ຈຸດ hook ທັງຫມົດ, ເບິ່ງເອກະສານ hook ຂ້າງເທິງສໍາລັບການຍົກເວັ້ນການນໍາໃຊ້ສະເພາະ
hooks.

GIPKG_HOOK_API
ອະ​ນຸ​ຍາດ​ໃຫ້​ສະ​ຄິບ hook ເພື່ອ​ສອບ​ຖາມ​ວ່າ​ການ​ໂຕ້​ຕອບ​ທີ່​ມີ​ໃຫ້​ເຂົາ​ເຈົ້າ​. ມີພຽງແຕ່ສອງ
ອົງປະກອບຕົວເລກທີ່ແຍກດ້ວຍ '.' ຊຶ່ງໃນນັ້ນມີຕົວເລກໄປທາງຂວາຂອງຈຸດ
ຈະໄດ້ຮັບການເພີ່ມຂຶ້ນທຸກໆຄັ້ງທີ່ພວກເຮົາເພີ່ມຕົວແປໃຫມ່ທີ່ hook ອາດຈະເຂົ້າເຖິງ, ຫຼື
ເພີ່ມລູກບິດໃໝ່ບາງອັນ ມັນອາດຈະປັບປ່ຽນສ່ວນທີ່ສ່ວນຕິດຕໍ່ທີ່ມີຢູ່ແລ້ວບໍ່ໄດ້ປ່ຽນແປງ.
ຖ້າ​ຫາກ​ວ່າ​ພວກ​ເຮົາ​ເຮັດ​ໄດ້ screw ຂຶ້ນ​ແລະ​ຈໍາ​ເປັນ​ຕ້ອງ​ໄດ້​ມີ​ການ​ປ່ຽນ​ແປງ​ໃນ​ການ​ໂຕ້​ຕອບ​ໃນ​ປັດ​ຈຸ​ບັນ​, ຈໍາ​ນວນ​ທາງ​ຊ້າຍ​
ຈະໄດ້ຮັບການຕໍາ. ເວີຊັນ API ປະຈຸບັນແມ່ນ 0.2

ມີ in API ສະບັບພາສາ 0.1
ຕົວແປເຫຼົ່ານີ້ມີໃຫ້ກັບ hook ຕັ້ງແຕ່ gitpkg ລຸ້ນ 0.13

GIPKG_TREEISH
ຜູ້ໃຊ້ຜ່ານ debian 'ສາຂາ' tree-ish ທີ່ gitpkg ຖືກເອີ້ນໃຫ້ສົ່ງອອກ.

GIPKG_ORIG_TREEISH
'origbranch' tree-ish ທີ່ gitpkg ຖືກເອີ້ນດ້ວຍ. ນີ້ຈະຫວ່າງເປົ່າຖ້າພຽງແຕ່
ມີການລະບຸ 'ສາຂາ' ດຽວ.

DEB_SOURCE
ຊື່ຂອງຊຸດແຫຼ່ງທີ່ຈະສ້າງ, ໂດຍບໍ່ມີການສະບັບໃດໆ. ດັ່ງທີ່ເຫັນຢູ່ໃນ
ທີ່ມາ: ພາກສະໜາມ dpkg-parsechangelog(1).

DEB_VERSION
ເວີຊັນຂອງຊຸດແຫຼ່ງເພື່ອສ້າງ, ໂດຍບໍ່ມີເວລາໃດໆ. ດັ່ງທີ່ເຫັນຢູ່ໃນ
ຊື່ຂອງໄຟລ໌ .diff.gz ແລະ .dsc.

USTREAM_VERSION
ເວີຊັນຂອງຊຸດແຫຼ່ງເພື່ອສ້າງ, ໂດຍບໍ່ມີການສະບັບ debian ໃດ. ດັ່ງທີ່ເຫັນ
ໃນນາມຂອງ orig tarball ໄດ້. ສໍາລັບຊຸດພື້ນເມືອງ, ນີ້ຈະຄືກັນກັບ
DEB_VERSION.

DEB_ORIG
ຊື່ໄຟລ໌ສະບັບເຕັມຂອງ orig tarball ເພື່ອໃຊ້ ຫຼືສ້າງ. ຕົວແປນີ້ແມ່ນ
ຫວ່າງເປົ່າສໍາລັບແພັກເກັດພື້ນເມືອງທີ່ບໍ່ມີສ່ວນສະບັບ Debian.

DEB_DSC
ຊື່ໄຟລ໌ເຕັມຂອງແພັກເກດ .dsc ວ່າຈະເປັນຫຼືໄດ້ຖືກສ້າງຂື້ນ.

DEB_PACKAGE
ຊື່ໄດເລກະທໍລີຂອງຕົ້ນແຫຼ່ງ debianised ທີ່ຈະສົ່ງໄປຫາ dpkg-ແຫຼ່ງ(1).

REPO_DIR
ເສັ້ນທາງຢ່າງແທ້ຈິງໄປຫາໄດເລກະທໍລີລະດັບສູງສຸດຂອງ git repo ທີ່ພວກເຮົາກໍາລັງສົ່ງອອກ.
ປົກກະຕິແລ້ວ, ຖ້າທ່ານຕ້ອງການເບິ່ງອອກຈາກຕົ້ນໄມ້ທີ່ເຈົ້າຖືກຖິ້ມລົງ, ເຈົ້າແມ່ນ
ອາດຈະເຮັດບາງສິ່ງບາງຢ່າງ (ໃນເວລາ) ຜິດ (ເວລາ), ແຕ່ມີຂໍ້ຍົກເວັ້ນ, ແລະເປັນ
ສາມາດສອບຖາມໄດ້ git-config ທາງ​ເລືອກ​ແມ່ນ​ຫນຶ່ງ​ໃນ​ນັ້ນ​. ສ່ວນຫຼາຍແມ່ນອັນນີ້
ສໍາລັບສິດທິໃນປັດຈຸບັນ. ເບິ່ງ repo-config-helper ເອກະສານຂ້າງລຸ່ມນີ້. ຈົ່ງລະວັງຖ້າທ່ານເຮັດ
ໃຊ້ມັນຫຼາຍອັນອື່ນ.

ມີ in API ສະບັບພາສາ 0.2
ຕົວແປເຫຼົ່ານີ້ມີໃຫ້ກັບ hook ຕັ້ງແຕ່ gitpkg ລຸ້ນ 0.24

GITPKG_AOPTS
array ສະມາຄົມທີ່ມີຕົວເລືອກແຖວຄໍາສັ່ງທີ່ບໍ່ໄດ້ວິເຄາະໂດຍ gitpkg
ຕົວຂອງມັນເອງທີ່ສາມາດຖືກນໍາໃຊ້ເພື່ອ override ພຶດຕິກໍາຂອງ hook ໄດ້. array ແມ່ນ keyed
ໃນ​ຊື່​ຂອງ​ທາງ​ເລືອກ​ທີ່​ມີ '--​' ເອົາ​ອອກ​. ຖ້າທາງເລືອກຖືກຜ່ານ
ຫຼາຍຄັ້ງ, ພຽງແຕ່ຄ່າສຸດທ້າຍທີ່ຜ່ານຈະຖືກເກັບໄວ້ໃນ array ນີ້. ສໍາລັບ
ຍົກຕົວຢ່າງ:

$ gitpkg --my-option=foo --option2 --opt=oops --opt='bar baz'

ຈະໃຫ້:

${GITPKG_AOPTS[my-option]} = "foo"
${GITPKG_AOPTS[ທາງເລືອກ2]} = ""
${GITPKG_AOPTS[opt]} = "bar baz"

GITPKG_IOPTS
array indexed ປະກອບດ້ວຍຕົວເລືອກແຖວຄໍາສັ່ງທີ່ບໍ່ໄດ້ວິເຄາະໂດຍ gitpkg ຕົວເອງ
ເຊິ່ງສາມາດຖືກໃຊ້ເພື່ອ override ພຶດຕິກໍາຂອງ hook ໄດ້. array ປະກອບດ້ວຍ
strings ທາງ​ເລືອກ​ຕົວ​ອັກ​ສອນ​ຜ່ານ​ແລະ​ດັ່ງ​ນັ້ນ​ສາ​ມາດ​ຖືກ​ນໍາ​ໃຊ້​ເພື່ອ​ເຂົ້າ​ເຖິງ​ທາງ​ເລືອກ​ທີ່​ມີ​
ມີຈຸດປະສົງເພື່ອຜ່ານຫຼາຍຄັ້ງ. ຍົກ​ຕົວ​ຢ່າງ:

$ gitpkg --my-option=foo --option2 --opt=oops --opt='bar baz'

ຈະໃຫ້:

${GITPKG_IOPTS[0]} = "--my-option=foo"
${GITPKG_IOPTS[1]} = "--option2"
${GITPKG_IOPTS[2]} = "--opt=oops"
${GITPKG_IOPTS[3]} = "--opt=bar baz"

ໄດ້ extract_values_for_option ເຮັດວຽກໃນ repo-config-helper (ເບິ່ງຂ້າງລຸ່ມນີ້ສໍາລັບລາຍລະອຽດ
ຂອງມັນ) ສາມາດໃຊ້ເພື່ອວິເຄາະອາເຣນີ້ຕື່ມອີກເພື່ອໃຫ້ໄດ້ຄ່າທັງໝົດຂອງ a
ທາງ​ເລືອກ​ສະ​ເພາະ​.

Hook ຫ້ອງສະຫມຸດ
ມີບາງສະຄິບ hook ກະປ໋ອງສໍາລັບວຽກງານຕ່າງໆທີ່ມີຢູ່ໃນ /usr/share/gitpkg/hooks
ເຊິ່ງປະຈຸບັນປະກອບມີ:

cowpoke-ອອກ-hook
ຮູທາງອອກແບບງ່າຍໆທີ່ສົ່ງຊຸດທີ່ສົ່ງອອກໄປເພື່ອໃຊ້ໃນການກໍ່ສ້າງ cowpoke(1).
ເພື່ອເປີດໃຊ້ມັນ:

$ git config gitpkg.exit-hook /usr/share/gitpkg/hooks/cowpoke-exit-hook

ເພີ່ມເຕີມ git-config(1​) ທາງ​ເລືອກ​ໃນ​ການ​ຕັ້ງ​ຄ່າ​:

gitpkg-cowpoke-exit-hook.ask-first
ຖ້າ 'ຈິງ' ເຕືອນສໍາລັບການຢືນຢັນກ່ອນທີ່ຈະໂທຫາ cowpoke. ຄ່າເລີ່ມຕົ້ນແມ່ນພຽງແຕ່
ສືບຕໍ່ເດີນຫນ້າແລະເຮັດມັນ.

gitpkg-cowpoke-exit-hook.options
ອາດຈະລວມເອົາທາງເລືອກອື່ນໃດນຶ່ງເພື່ອສົ່ງຜ່ານ verbatim ໄປ cowpoke. ຜ່ານຫຼາຍ
ທາງເລືອກ, ກໍານົດນີ້ຫຼາຍຄັ້ງ, ຫນຶ່ງຄັ້ງສໍາລັບແຕ່ລະທາງເລືອກ. ນີ້ອາດຈະເປັນ
overridden ໃນບັນທັດຄໍາສັ່ງທີ່ມີ --cowpoke=arg ທາງເລືອກ, ເຊັ່ນດຽວກັນ
ຕ້ອງຜ່ານຫຼາຍຄັ້ງເພື່ອກໍານົດຫຼາຍທາງເລືອກ.

dpkg-buildpackage-exit-hook
Hook ອອກແບບງ່າຍໆເພື່ອສ້າງແພັກເກັດໄບນາຣີຢູ່ໃນທ້ອງຖິ່ນ dpkg-buildpackage(1). ເຖິງ
ເປີດໃຊ້ມັນ:

$ git config gitpkg.exit-hook /usr/share/gitpkg/hooks/dpkg-buildpackage-exit-hook

ເພີ່ມເຕີມ git-config(1​) ທາງ​ເລືອກ​ໃນ​ການ​ຕັ້ງ​ຄ່າ​:

gitpkg-dpkg-buildpackage-exit-hook.ask-first
ຖ້າ 'ຈິງ' ເຕືອນສໍາລັບການຢືນຢັນກ່ອນທີ່ຈະໂທຫາ dpkg-buildpackage. ຄ່າເລີ່ມຕົ້ນ
ແມ່ນເພື່ອພຽງແຕ່ເຮັດມັນ.

gitpkg-dpkg-buildpackage-exit-hook.options
ອາດຈະລວມເອົາທາງເລືອກອື່ນໃດນຶ່ງເພື່ອສົ່ງຜ່ານ verbatim ໄປ dpkg-buildpackage. ຜ່ານ
ທາງ​ເລືອກ​ທີ່​ຫຼາກ​ຫຼາຍ​, ກໍາ​ນົດ​ນີ້​ຫຼາຍ​ຄັ້ງ​, ຫນຶ່ງ​ຄັ້ງ​ສໍາ​ລັບ​ແຕ່​ລະ​ທາງ​ເລືອກ​. ນີ້ອາດຈະເປັນ
overridden ໃນບັນທັດຄໍາສັ່ງທີ່ມີ --dpkg-bp=arg ທາງເລືອກ, ເຊັ່ນດຽວກັນ
ຕ້ອງຜ່ານຫຼາຍຄັ້ງເພື່ອກໍານົດຫຼາຍທາງເລືອກ.

gitpkg-dpkg-buildpackage-exit-hook.build-log
ຖ້າຕັ້ງ 'false' ບໍ່ໄດ້ບັນທຶກບັນທຶກຂອງຂະບວນການສ້າງ, ຄ່າເລີ່ມຕົ້ນແມ່ນເພື່ອບັນທຶກ
ຫນຶ່ງ.

pristine-tar-pre-export-hook
hook ເພື່ອສະກັດ orig tarball ໂດຍໃຊ້ pristine-tar. ແຫຼ່ງທີ່ມາເພື່ອສະກັດແມ່ນ
ກໍານົດໂດຍສະບັບຊຸດຂອງ 'ສາຂາ' tree-ish. ເພື່ອເປີດໃຊ້ງານມັນ:

$ git config gitpkg.pre-export-hook /usr/share/gitpkg/hooks/pristine-tar-pre-export-hook

ຖ້າບໍ່ພົບສາຂາ pristine-tar ໃນ repo, gitpkg ຈະຖືກຢຸດເຊົາ.

quilt-patches-deb-export-hook
hook ນີ້ອ່ານບັນຊີລາຍຊື່ຂອງໄລຍະການແກ້ໄຂທີ່ເຫມາະສົມສໍາລັບການ git-format-patch(1) ຈາກ
ເອກະສານ debian/source/git-patches, ຫນຶ່ງຕໍ່ເສັ້ນ, ແລະສົ່ງອອກໃຫ້ເຂົາເຈົ້າກັບ debian/patches
ໄດເລກະທໍລີໃນຮູບແບບທີ່ເຫມາະສົມສໍາລັບ (ຮູບແບບ 3.0) ຊຸດຜ້າຫົ່ມ. ມັນບໍ່ຈໍາເປັນສໍາລັບ
ການສ້າງຊຸດດັ່ງກ່າວ, ແຕ່ອະນຸຍາດໃຫ້ທ່ານສາມາດແຍກແພັກເກັດສ່ວນບຸກຄົນອອກຢ່າງໃດກໍຕາມທ່ານ
ກະ​ລຸ​ນາ​ຈາກ patch ດຽວ​ໃນ​ຕອນ​ຕົ້ນ​ທີ່​ບໍ່​ດັ່ງ​ນັ້ນ​ສ້າງ​ໂດຍ​ dpkg-ແຫຼ່ງ.

ເພື່ອເປີດໃຊ້ມັນ:

$ git config gitpkg.deb-export-hook /usr/share/gitpkg/hooks/quilt-patches-deb-export-hook

ເນື້ອໃນຂອງ debian/source/git-patches ອາດ​ຈະ​ປະ​ກອບ​ມີ​ຄໍາ​ຄິດ​ເຫັນ (ກ່ຽວ​ກັບ​ການ​ເລີ່ມ​ຕົ້ນ​ແຖວ​ໃດ​ຫນຶ່ງ​
with a #), ເສັ້ນຫວ່າງເປົ່າ, ແລະການສະແດງອອກຂອງຂອບເຂດຂອງຄໍາຫມັ້ນສັນຍາ. ໄລຍະການດັດແກ້
ອາດຈະປະກອບມີ $DEB_VERSION, $UPSTREAM_VERSION, $DEB_REF or $UPSTREAM_REFທີ່ຢູ່ ທໍາອິດ
ຄູ່ຈະຖືກແທນທີ່ດ້ວຍສະບັບຂອງຊຸດທີ່ຖືກສົ່ງອອກ, ອັນທີສອງ
ຈັບຄູ່ກັບສະຕຣິງສະບັບເຫຼົ່ານັ້ນຫຼັງຈາກ mangling ໂດຍ sanitise_git_ref ເພື່ອ remap ໃຫ້ເຂົາເຈົ້າເປັນ
git ທາງດ້ານກົດຫມາຍ ປ່ຽນຊື່. ໃນກໍລະນີຫຼາຍທີ່ສຸດ, ການນໍາໃຊ້ສະບັບທີ່ຖືກອະນາໄມແມ່ນເປັນທີ່ນິຍົມ.
ຍົກ​ຕົວ​ຢ່າງ:

# ສົ່ງອອກຄໍາຫມັ້ນສັນຍາທັງຫມົດລະຫວ່າງສອງ treeish ນີ້,
# ອີງໃສ່ເວີຊັນຂອງແພັກເກດທີ່ສົ່ງອອກ.

upstream/$UPSTREAM_REF..patches/$DEB_REF

debcherry-deb-export-hook
hook ນີ້ invokes git-debcherry(1) ເພື່ອຊອກຫາ ແລະ ສົ່ງອອກແຜ່ນແພໄປຍັງແຫຼ່ງຕົ້ນນໍ້າ
ໃນຮູບແບບທີ່ເຫມາະສົມສໍາລັບການນໍາໃຊ້ກັບ (ຮູບແບບ 3.0) ຊຸດຜ້າຫົ່ມ. ມັນອະນຸຍາດໃຫ້ສໍາລັບການເພີ່ມເຕີມ
ທໍາມະຊາດ (ແລະອັດຕະໂນມັດ) ຂະບວນການເຮັດວຽກກ່ວາ hook quilt-patches ຂ້າງເທິງໂດຍການຊອກຫາ
ແຜ່ນແພທີ່ເຮັດກັບສາຂາການຫຸ້ມຫໍ່ທີ່ຍັງບໍ່ທັນໄດ້ນໍາໃຊ້ໃນຕົ້ນນ້ໍາ.

ເພື່ອເປີດໃຊ້ມັນ:

$ git config gitpkg.deb-export-hook /usr/share/gitpkg/hooks/debcherry-deb-export-hook

ເພື່ອໃຊ້ hook ນີ້, a ${DEB_ORIG}.commit ໄຟລ໌ຕ້ອງຖືກສ້າງຂື້ນເຊິ່ງປະກອບດ້ວຍ
treeish ຂອງແຫຼ່ງຕົ້ນນ້ໍາທີ່ສົ່ງອອກໃນ repository. ນີ້ຈະຖືກສ້າງຂື້ນ
ອັດຕະໂນມັດ (ຖ້າ hook ນີ້ຖືກເປີດໃຊ້) ເມື່ອທ່ານສົ່ງອອກ tarball ເທິງນ້ໍາໂດຍການຜ່ານ
ທັງສອງ ສາຂາ ແລະ ສາຂາ to gitpkg, ຫຼືຖ້າທ່ານໃຊ້ pristine-tar-pre-export-hook,
ເຊິ່ງກໍານົດຄໍາຫມັ້ນສັນຍາທີ່ເຫມາະສົມທີ່ສອດຄ້ອງກັນກັບ tarball. ຖ້ານ້ໍາຂອງເຈົ້າ
tarball ຖືກສ້າງຂື້ນໂດຍໃຊ້ກົນໄກອື່ນທີ່ເຈົ້າຕ້ອງການເພື່ອຮັບປະກັນວ່າໄຟລ໌ນັ້ນແມ່ນ
ສ້າງ​ຕົວ​ທ່ານ​ເອງ​.

ຖ້າໃຊ້ hook ນີ້, ທ່ານອາດຈະຕ້ອງການບັນທຶກສິ່ງນັ້ນຢູ່ໃນບ່ອນເກັບມ້ຽນຂອງທ່ານ
ຄ້າຍຄືກັນກັບຂໍ້ຄວາມໃນ /usr/share/doc/gitpkg/examples/README.debcherry-export ເປັນຫນຶ່ງ
ຄວາມສະດວກສະບາຍໃຫ້ກັບຜູ້ໃຊ້ອື່ນໆ. ແພກເກດຂອງທ່ານຈະຍັງຄົງສາມາດສົ່ງອອກໄດ້ໂດຍບໍ່ມີການ hook ນີ້
ເປີດໃຊ້ແລ້ວ, ມັນຈະບໍ່ມີ patches ເທິງນ້ໍາແຍກອອກເປັນ
ຊຸດຜ້າຫົ່ມ.

Hook ຫ້ອງສະຫມຸດ ຜູ້ຊ່ວຍ
ເຫຼົ່ານີ້ແມ່ນ snippets ເລັກນ້ອຍຫຼາຍ, ສໍາລັບການດໍາເນີນງານທີ່ອາດຈະຖືກແບ່ງປັນໂດຍຫຼາຍໆຄົນ
ສະຄຣິບ. ຍັງພົບເຫັນຢູ່ໃນ /usr/share/gitpkg/hooks. ປົກກະຕິແລ້ວສິ່ງເຫຼົ່ານີ້ຈະມາຈາກຜູ້ອື່ນ
scripts ແທນທີ່ຈະຖືກຕິດກັບໂດຍກົງ.

repo-config-helper
ສະຫນອງ wrapper ງ່າຍດາຍປະມານ `ໄປ config`, ເຊິ່ງຮັບປະກັນວ່າມັນຖືກເອີ້ນຈາກ
repo tree ບ່ອນທີ່ຕົວເລືອກ config ສະເພາະ repo ອາດຈະຖືກເກັບໄວ້. ມີປະໂຫຍດຕໍ່ສະຄຣິບ
ເຊິ່ງບໍ່ໄດ້ຖືກເອີ້ນຈາກພາຍໃນຕົ້ນໄມ້ repo, ແຕ່ວ່າມີ git-config ທາງ​ເລືອກ​ຂອງ​
ຂອງຕົນເອງເພື່ອສອບຖາມ.

ສະຫນອງການ sanitise_git_ref ຟັງຊັນ shell ທີ່ remap ຕົວອັກສອນຕົວອັກສອນທີ່ເປັນ
ຜິດກົດຫມາຍທີ່ຈະໃຊ້ໃນການປ່ຽນຊື່ git.

ສະຫນອງການ extract_values_for_option ຟັງຊັນ shell ທີ່ສາມາດໃຊ້ເພື່ອສະກັດເອົາ
array ຂອງຄ່າສໍາລັບທາງເລືອກສະເພາະໃດຫນຶ່ງຈາກ GITPKG_IOPTS.

ເບິ່ງເນື້ອໃນຂອງໄຟລ໌ນັ້ນເອງສໍາລັບເອກະສານລາຍລະອຽດເພີ່ມເຕີມກ່ຽວກັບຫນ້າທີ່
ວ່າມັນສະຫນອງ.

ການໂຕ້ຕອບ


ຖ້າເຈົ້າຕັ້ງໃຈຈະໂທຫາ gitpkg ຈາກສະຄິບຂອງທ່ານເອງ, ຫຼັງຈາກນັ້ນທ່ານຄວນສັງເກດວ່າມີ
ສອງສະຖານະການໃນເວລາທີ່ມັນອາດຈະກະຕຸ້ນການໂຕ້ຕອບໂດຍຄ່າເລີ່ມຕົ້ນ. ບໍ່ມີ One True Sane
ຄ່າເລີ່ມຕົ້ນສໍາລັບກໍລະນີເຫຼົ່ານີ້, ສະນັ້ນມັນດີກວ່າທີ່ຈະພຽງແຕ່ຖາມຜູ້ໃຊ້ແລະສືບຕໍ່ກ່ວາທີ່ຈະເຮັດໃຫ້
ພວກເຂົາເລີ່ມຕົ້ນຂະບວນການທັງຫມົດອີກເທື່ອຫນຶ່ງໃນກໍລະນີທີ່ພວກເຂົາໄດ້ໂທຫາ gitpkg
ໂດຍກົງ. ສໍາລັບລາຍລະອຽດ, ເບິ່ງໄດ້ gitpkg.force-overwrite-orig ແລະ gitpkg.create-fake-orig
ຕົວເລືອກການຕັ້ງຄ່າຂ້າງເທິງ. ທ່ານຄວນກໍານົດທັງສອງຢ່າງຈະແຈ້ງກ່ຽວກັບພຶດຕິກໍາທີ່ທ່ານຕ້ອງການ
ຈາກພວກເຂົາຖ້າ gitpkg ບໍ່ຄວນກາຍເປັນການໂຕ້ຕອບ.

ເຮັດວຽກ


ເຖິງແມ່ນວ່າ gitpkg ຢ່າງຊັດເຈນບໍ່ໄດ້ພະຍາຍາມບັງຄັບຂັ້ນຕອນການເຮັດວຽກສະເພາະໃດໆຕໍ່ເຈົ້າ
ເພື່ອເຮັດໃຫ້ການນໍາໃຊ້ຢ່າງເຕັມທີ່ຂອງມັນ, ມັນອາດຈະເປັນມູນຄ່າທີ່ຈະກ່າວເຖິງຢ່າງໄວວາຢ່າງຫນ້ອຍຫນຶ່ງອັນ
ວິທີງ່າຍໆໃນການຈັດການແພັກເກັດ Debian ໃນ git.

ໂຄງສ້າງ repo ທົ່ວໄປຫນຶ່ງແມ່ນເພື່ອຮັກສາແຫຼ່ງນ້ໍາ pristine ໃນສາຂາຫນຶ່ງ, ເຊິ່ງແມ່ນ
ປັບປຸງໂດຍກົງຈາກ repo ເທິງນ້ໍາຫຼືໂດຍການນໍາເຂົ້າ tar archives ກັບມັນ
ແຕ່ລະໄລຍະ, ໂດຍມີແຫຼ່ງທີ່ມາຂອງ Debian patched ໃນສາຂາອື່ນ. ໃນ​ສະ​ຖາ​ນະ​ການ​ນີ້​
ວຽກງານການກະກຽມການປ່ອຍນ້ໍາໃຫມ່ຈາກ tarball ອາດຈະເບິ່ງຄືວ່ານີ້:

ກວດເບິ່ງສາຂາຕົ້ນນ້ໍາ
$ cd myrepo
$ git checkout upstream

ເອົາໄຟລ໌ຕົ້ນສະບັບເກົ່າທັງໝົດອອກຈາກ repo
$ rm -rf $(all_files_ຍົກເວັ້ນ .git)

Unpack tarball ໃຫມ່ໃນສະຖານທີ່ຂອງເຂົາເຈົ້າ
$ tar zxf $new_upstream.tar.gz

ໃຫ້ git ຄິດອອກສິ່ງທີ່ຖືກປ່ຽນຊື່ / ໃຫມ່ / ຫມົດໂດຍຕົວມັນເອງ.
ໃຫ້ແນ່ໃຈວ່າທ່ານບໍ່ມີສິ່ງຕ່າງໆເຊັ່ນໄຟລ໌ vim .swp ລີ້ຊ່ອນຢູ່
ຢູ່ໃນຕົ້ນໄມ້ຍັງຢູ່ໃນຈຸດນີ້.
$ git ເພີ່ມ.
$ git commit -a
$ git tag v$upstream_version

ກະກຽມສາຂາ Debian
$ git checkout debian
$ git ຜະສົມຜະສານທາງເທິງ
$ $(ອັບເດດ changelog ແລະ patches debian ອື່ນໆ ແລະອື່ນໆ.)
$ git commit -a
$ git tag v${upstream_version}-$debian_version

ປ່ອຍອອກມາ
$ gitpkg v${upstream_version}-$debian_version v$upstream_version
$ cd ../deb-packages/mypackage && dpkg-buildpackage ...

ໃຊ້ gitpkg ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net


ເຊີບເວີ ແລະສະຖານີເຮັດວຽກຟຣີ

ດາວໂຫຼດແອັບ Windows ແລະ Linux

Linux ຄຳ ສັ່ງ

Ad




×
ການ​ໂຄ​ສະ​ນາ
?ຊື້ເຄື່ອງ, ຈອງ, ຫຼືຊື້ທີ່ນີ້ — ບໍ່ມີຄ່າໃຊ້ຈ່າຍ, ຊ່ວຍໃຫ້ການບໍລິການຟຣີ.