پرش به محتوا

بحث راهنما:گیت

Page contents not supported in other languages.
افزودن مبحث
از ویکی‌پدیا، دانشنامهٔ آزاد
آخرین نظر: ۲ سال پیش توسط 4nn1l2 در مبحث تغییر منطقهٔ زمانی

refs/for/[ویرایش]

چرا

$ git push origin HEAD:refs/for/master

و نه

$ git push origin HEAD:master

نقش refs/for/ چیست؟

به خاطر گریت+++. فچ از روی مخزن مرکزی صورت می‌گیرد ولی پوش به مخزن دیگری فرستاده می‌شود تا توسط دیگران مرور/بررسی شود. ‏4nn1l2 (بحث) ‏۲۶ نوامبر ۲۰۲۱، ساعت ۱۰:۲۹ (UTC)پاسخ

jenkins-bot[ویرایش]

چه‌طور راه می‌افتد؟

لیست سفید دارد: mw:Continuous integration/Allow list4nn1l2 (بحث) ‏۲۶ نوامبر ۲۰۲۱، ساعت ۱۰:۲۹ (UTC)پاسخ

درخواست خواندن متن[ویرایش]

@Dalba: سلام. برای نوشتن این راهنما زحمت کشیدم. البته بیشتر راهنماهایی که می‌نویسم برای خودم است تا بهتر در ذهنم حک شوند و در آینده به‌سرعت بتوانم خودم را از حالت زنگ‌زدگی (فراموشی) به در آورم. با این حال به نظرم این دست راهنماها برای اشخاص ثالث هم می‌تواند مفید باشد و به همین منظور آن‌ها را به صورت عمومی می‌نویسم و به اشتراک می‌گذارم. درخواستی که از شما دارم این است که هر وقت فرصت داشتید راهنما را بخوانید و نظر، پیشنهاد، نقد، بازخورد یا ... بدهید/بکنید. هیچ عجله‌ای ندارم. بسیار ممنونم. ‏4nn1l2 (بحث) ‏۵ ژانویهٔ ۲۰۲۲، ساعت ۱۶:۳۶ (UTC)پاسخ

سلام. خیلی خوب شده. کار کردن با gerrit شروع سختی دارد؛ شاید یک دلیلش این باشد که روش‌های مختلفی می‌شود در پیش گرفت (مثلاً در انتخاب ssh، https یا ویرایش مستقیم و ...) این راهنما به خوبی مسائل مهم را توضیح داده. مرور کردم، چیزی برای بهبود دادن به نظرم نرسید، چند نکتهٔ تازه هم یاد گرفتم. ممنون. ‏Dalba ‏۵ ژانویهٔ ۲۰۲۲، ساعت ۱۹:۲۰ (UTC)پاسخ

git add .[ویرایش]

git add . فقط فایل‌های داخل پوشهٔ کنونی را به سکو می‌برد. معمولاً می‌خواهند زیرپوشه‌ها را هم در بر بگیرد که در این صورت می‌شود از git add -A (معادل git add --all) استفاده کرد. ‍‍‏Dalba ‏۱۰ ژانویهٔ ۲۰۲۲، ساعت ۱۲:۳۷ (UTC)پاسخ

✓4nn1l2 (بحث) ‏۱۰ ژانویهٔ ۲۰۲۲، ساعت ۱۳:۵۹ (UTC)پاسخ

تغییر منطقهٔ زمانی[ویرایش]

@Dalba: سلام. آیا برای تعمیر آنچه در راهنما:گیت#حفظ محرمانگی آمده راه‌حلی بلدید؟ منظورم تغییر دادن منطقهٔ زمانی CommitDate است (AuthorDate را تغییر دادم). سپاس ‏4nn1l2 (بحث) ‏۱۰ ژانویهٔ ۲۰۲۲، ساعت ۱۳:۵۹ (UTC)پاسخ

به نظرم این alias کار مورد نظر را انجام دهد:
 utccommit = !D=$(date -u +%Y-%m-%dT%H:%M:%SZ) eval 'GIT_COMMITTER_DATE=$D git commit --date=$D'
که اگر بخواهیم از git config اعمالش کنیم می‌توان نوشت:
$ git config --global alias.utccommit $'!D=$(date -u +%Y-%m-%dT%H:%M:%SZ) eval \'GIT_COMMITTER_DATE=$D git commit --date=$D\''
‏Dalba ‏۱۰ ژانویهٔ ۲۰۲۲، ساعت ۱۵:۳۳ (UTC)پاسخ
@Dalba: این دومی برای من کار نکرد و حتی زمان AuthorDate را هم زمان مال سیستمم نشان داد نه UTC. اولی را امتحان نکردم. ترجیح می‌دهم دومی اصلاح شود. ‏4nn1l2 (بحث) ‏۱۰ ژانویهٔ ۲۰۲۲، ساعت ۱۶:۱۶ (UTC)پاسخ
آیا اجرای فرمانِ
$ D=$(date -u +%Y-%m-%dT%H:%M:%SZ) eval 'GIT_COMMITTER_DATE=$D git commit --date=$D'
(به جای git utccommit و در محیط bash) برای شما کار می‌کند یا خطا می‌دهد؟
‏Dalba ‏۱۰ ژانویهٔ ۲۰۲۲، ساعت ۱۶:۴۳ (UTC)پاسخ
خیر خطا نمی‌دهد. ‏4nn1l2 (بحث) ‏۱۰ ژانویهٔ ۲۰۲۲، ساعت ۱۷:۰۷ (UTC)پاسخ
اگر قبلی عمل نکرد، این را امتحان کنید:
$ git config --global alias.utccommit '!GIT_COMMITTER_DATE=$(date -u +%Y-%m-%dT%H:%M:%SZ) git commit --date=$(date -u +%Y-%m-%dT%H:%M:%SZ)'
‏Dalba ‏۱۰ ژانویهٔ ۲۰۲۲، ساعت ۱۷:۰۱ (UTC)پاسخ
این یکی کار کرد :) ‏4nn1l2 (بحث) ‏۱۰ ژانویهٔ ۲۰۲۲، ساعت ۱۷:۰۷ (UTC)پاسخ