Ачааллж байна...
Бүлэг 5-ын эхний гурван хичээлд бид repository-гоо README-тэй, цэвэр бүтэцтэй, лицензтэй болгож, GitHub-ийн интерфэйсээр аялсан. Энэ бүх ажил нэг асуултад хариулахад чиглэгдсэн: өөр хүн таны төслийг нээхэд юу харах вэ? Энэ хичээлд тэр асуултыг хамгийн чухал өнцгөөс нь авч үзнэ: таны GitHub бол таны ажлын нотолгоо, хөгжүүлэгчийн portfolio юм. Ажил олгогч, дадлагын байрны reviewer, хамтран ажиллах хүсэлтэй хүн таны GitHub-ийг нээхэд юуг хамгийн түрүүнд хардаг вэ? Профайлаа хэрхэн цэгцлэх вэ? Аль төслүүдээ онцлох вэ?
Энэ хичээлд ганц ч шинэ command байхгүй. Энэ бол хэрэгслийн биш, шийдвэрийн хичээл. Бид таны GitHub профайлыг алхам алхмаар засаж, онцлох repository-уудаа сонгож, чанарын тухай шударга ярилцана. Нэг зүйлийг эхнээс нь тодорхой хэлье: сайн GitHub профайл ажил олохыг баталгаажуулахгүй, бүх ажил олгогч түүнийг заавал үздэггүй. Гэхдээ үзсэн тохиолдолд энэ нь таны ур чадварыг ярианаас илүү тод, илүү итгэл төрүүлэхүйц харуулдаг. "Би Python мэднэ" гэдэг бол мэдэгдэл, харин сайн repository бол нотолгоо.
Мөнгөний дархан шинэ захиалагчтай уулзахдаа хийж байсан бүх зүйлээ авчирдаггүй. Анх сурч байхдаа эвдсэн хуудас, хагас хийсэн бөгж, туршилтын хаягдал агуулахдаа үлдэнэ. Харин тэр хамгийн сайн хийсэн хэдэн бүтээлээ цэвэрлэж, гялалзуулж, нэг нэгээр нь тайлбарлах үгтэйгээр үзүүлнэ. Захиалагч тэр хэдэн бүтээлээс дархны чадварыг, нарийн ажилд хандах хандлагыг, итгэж болох эсэхийг нь хэдхэн минутад дүгнэнэ.
Таны GitHub профайл бол тэр үзэсгэлэн. Тэнд таны бүх туршилт, бүх дадлага байх албагүй. Харин хамгийн сайн, бүрэн гүйцэд хэдэн бүтээл тань нүүрэн талд, цэвэрхэн, тайлбартайгаар байх ёстой. Мөн дархны бүтээлийн чанар зөвхөн эцсийн үр дүнд биш, түүнийг хийсэн арга барилд ч харагддаг шиг таны repository-ийн commit-ын түүх таны ажиллах арга барилыг харуулдаг.
Таны GitHub-ийг үзэх хүн ихэвчлэн их цаг зарцуулдаггүй. Олон өргөдлийг хянаж буй хүн нэг профайлд хэдхэн минут л зарцуулж магадгүй. Тиймээс тэр хүний нүд тодорхой дарааллаар хөдөлдөг бөгөөд тэр дарааллыг мэдэх нь чухал.
Эхлээд профайлын хуудас. Энэ нь github.com/<таны-username> хаягтай хуудас бөгөөд тэнд таны нэр, зураг, товч танилцуулга, онцолсон repository-ууд, мөн ногоон дөрвөлжингүүдээс бүрдсэн идэвхийн график харагдана. Reviewer эндээс хоёр гурван секундэд ерөнхий сэтгэгдэл авна: энэ хүн хэн бэ, юун дээр ажилладаг вэ, идэвхтэй юу.
Дараа нь нэг эсвэл хоёр repository. Ихэнхдээ онцолсон repository-уудын эхнийх нь нээгдэнэ. Тэнд reviewer эхлээд README-г уншина: энэ төсөл юу вэ, хэрхэн ажилладаг вэ. 5.1 дүгээр хичээлийн "сайн README хариулдаг асуултууд" яг энд ажилладаг. Дараа нь файлуудын жагсаалтыг харна: бүтэц цэвэр үү, 5.2 дугаар хичээлийн хог байна уу. Файл бүрийн хажуудах commit message-үүд ч энэ үед нүдэнд тусна.
Гурав дахь шатанд сонирхсон reviewer гүнзгийрнэ. Commit-ын түүхийг нээж, ажил хэрхэн хөгжсөнийг харна. Нэг хоёр файлыг нээж, кодыг уншина: нэрнүүд ойлгомжтой юу, функцууд жижиг, тодорхой юу. Заримдаа төслийг clone хийж ажиллуулж ч үзнэ. Энэ үед README-ийн ажиллуулах заавар үнэхээр ажилладаг эсэх шалгагдана.
Энэ дарааллаас нэг чухал сургамж гарна: эхний шатнууд хамгийн их нөлөөтэй. Хэчнээн сайн код бичсэн ч README байхгүй, профайл хоосон бол reviewer кодыг тань хэзээ ч нээхгүй байж магадгүй. Тиймээс энэ хичээлд бид дээрээс доош, профайлаас эхэлнэ.
Үндсэн мэдээлэл
GitHub-ийн баруун дээд буланд профайлын зургаа дараад Settings сонгоно уу. Нээгдэх анхны хуудас бол “Public profile” буюу нийтэд харагдах профайл. Энд хэдэн талбар бий бөгөөд тус бүрийг ухамсартайгаар бөглөцгөөе.
[Зураг: Settings → Public profile хуудас]
Name талбарт жинхэнэ нэрээ бичнэ үү, жишээ нь “Bat Dorj”. Username нь bat-dorj байсан ч жинхэнэ нэр нь reviewer-т таныг өргөдлийн бичигтэй тань холбоход тусална. Bio талбарт нэг хоёр өгүүлбэрээр өөрийгөө танилцуулна. Урт намтар хэрэггүй, юу хийдэг, юу сурч байгаагаа хэлэхэд хангалттай. Жишээ нь “Python developer learning backend development. Based in Ulaanbaatar.” Энэ нь энгийн, үнэн, хэтрүүлэлгүй. “Senior full-stack ninja” гэх мэт хэтрүүлсэн тодорхойлолтоос зайлсхийгээрэй, reviewer тэдгээрийг хурдан харж, итгэлээ алддаг.
Профайлын зураг заавал шаардлагагүй ч хоосон дүрснээс хүний царай эсвэл цэвэр, мэргэжлийн зураг илүү итгэл төрүүлдэг. Location буюу байршлын талбар сонголт: хот, улсаа бичих нь орон нутгийн ажил олгогчдод тустай ч хувийн нууцлалаа бодож шийдээрэй. Нарийн хаяг бичих шаардлага огт байхгүй. Хэрвээ танд хувийн вэбсайт эсвэл мэргэжлийн сүлжээний профайл бий бол холбоосыг нэмж болно.
Эцэст нь хуудасны доод хэсгийн “Update profile” товчийг дарж хадгална уу.
Онцолсон repository-ууд
Профайлын хуудсан дээр GitHub таны repository-уудаас зургаа хүртэлхийг онцлон харуулах боломж олгодог. Үүнийг pinned repositories гэдэг. Онцлоогүй бол GitHub өөрөө сүүлд идэвхтэй байсан repository-уудыг харуулна. Тэдгээр нь таны хамгийн сайн ажил биш, зүгээр л хамгийн сүүлийн туршилт байж магадгүй.
Өөрийн профайлын хуудас руу ороод, repository-уудын хэсгийн дээд талын “Customize your pins” буюу "онцлохоо тохируулах" холбоосыг дарна уу. Нээгдсэн цонхонд таны бүх repository-ийн жагсаалт гарна. Зөвхөн дор дурдсан шалгуурыг хангасан repository-уудыг сонгоорой. Одоохондоо танд зарлагын бүртгэл л тийм байж магадгүй, энэ бол бүрэн хэвийн. Нэг сайн онцолсон repository зургаан дунд зэргийнхээс илүү.
[Зураг: “Customize your pins” цонх]
Repository-ийн About хэсэг
Онцолсон repository бүрийн хайрцагт түүний About хэсгийн тайлбар харагдана. Тиймээс 5.3 дугаар хичээлд дурдсан About хэсгийг бөглөх нь энд маш чухал. Зарлагын бүртгэлийн repository хуудсанд About хэсгийн хажуудах арааны icon-ыг дарна уу. Description талбарт нэг өгүүлбэр тайлбар, жишээ нь “Command-line expense tracker in Python with JSON storage” гэж бичнэ. Topics талбарт түлхүүр үгсийг нэмж болно, жишээ нь python, cli, json. Topics нь таны repository-г хайлтад олдох боломжийг нэмэгдүүлж, reviewer-т ашигласан технологийг нэг харцаар харуулна.
[Зураг: About хэсгийг засах цонх, description ба topics]
Профайлын README (сонголт)
GitHub-д нэг сонирхолтой боломж бий. Хэрвээ та username-тэйгээ яг ижил нэртэй public repository үүсгээд, түүнд README.md нэмбэл тэр README таны профайлын хуудасны хамгийн дээд хэсэгт харагдана. Жишээ нь username bat-dorj бол bat-dorj нэртэй repository. Энэ нь таны профайлд өөрийгөө Markdown-оор дэлгэрэнгүй танилцуулах газар болдог. GitHub ийм нэртэй repository үүсгэх үед энэ тухай мэдэгдэл харуулдаг.
Энэ бол бүрэн сонголт бөгөөд олон сайн хөгжүүлэгч профайлын README-гүй байдаг. Хэрвээ хийх гэж байгаа бол энгийн байлгаарай: хэн бэ, юун дээр ажилладаг вэ, юу сурч байгаа вэ, хэдхэн мөрөөр. Олон өнгөт тэмдэг, хөдөлгөөнт зураг, статистикийн самбар чимэглэл мэт санагдаж болох ч reviewer-ийн анхаарлыг таны жинхэнэ ажлаас сарниулдаг. Жишээ нь:
markdown
# Bat Dorj
Python developer from Ulaanbaatar, learning backend development.
- Currently learning: Git, testing with pytest, FastAPI
- Projects: see the pinned repositories belowRepository-г онцлохоосоо өмнө түүнийг дараах шалгуураар шалгаарай. Энэ бол Бүлэг 5-д сурсан бүх зүйлийн нэгтгэл юм.
README бий бөгөөд төсөл юу вэ, хэрхэн ажиллуулах вэ гэдэгт тодорхой хариулдаг. Ажиллуулах заавар үнэхээр ажилладаг. Бүтэц цэвэр: хог, нууц, хувийн мэдээлэл, гар хуулбар байхгүй. Commit-ын түүх ойлгомжтой message-үүдтэй. Лиценз бий. About хэсэгт тайлбар, topics бий. Программ ажилладаг, мэдэгдэж буй том алдаагүй.
Таны зарлагын бүртгэл энэ сургалтын явцад эдгээр шалгуурыг аль хэдийн хангасан. Тийм учраас энэ нь таны анхны онцолсон repository болоход бэлэн.
Reviewer-ийн гурав дахь шатанд commit-ын түүх ихэвчлэн нээгддэг гэж бид хэлсэн. Энэ нь яагаад чухал вэ? Учир нь эцсийн код таны юу хийснийг харуулдаг бол түүх нь таныг хэрхэн ажилладгийг харуулдаг. Жижиг, утга бүхий, тодорхой message-тэй commit-ууд таныг ажлаа алхам алхмаар төлөвлөдөг, өөрчлөлт бүрийг ухамсартайгаар хийдэг хүн гэдгийг харуулна. Энэ бол багт ажиллахад хамгийн их үнэлэгддэг шинж чанаруудын нэг.
Эсрэгээрээ, бүх кодыг нэг дор агуулсан ганц “Initial commit”-тэй repository юу ч хэлэхгүй. Тэр код хэрхэн бүтээгдсэн нь харагдахгүй, хаа нэгтээс хуулж тавьсан эсэх нь ч тодорхойгүй. “fix”, “asdf”, “update” гэх мэт message-үүдийн урт жагсаалт ажлын арга барил эмх замбараагүй гэдгийг харуулна. Бүлэг 2-оос хойш бидний баримталсан дадлууд, утга бүхий жижиг commit, тодорхой англи message, салаа дээр ажиллаж нэгтгэх, бүгд энд үр шимээ өгдөг.
Профайлын хуудсан дээрх ногоон дөрвөлжингүүдээс бүрдсэн графикийг contribution graph буюу хувь нэмрийн график гэдэг. Дөрвөлжин бүр нэг өдөр бөгөөд тэр өдөр хийсэн commit болон бусад идэвхийн хэмжээгээр бараан ногоон өнгөтэй болдог. GitHub таны commit-ыг энэ графикт тоолохдоо commit-ын имэйл таны бүртгэлд бүртгэлтэй, commit repository-ийн үндсэн салаанд байгаа эсэхийг хардаг. 4.1 дүгээр хичээлд имэйлээ зөв тохируулсны нэг үр дүн энэ.
Энэ графикийн тухай шударга байх нь чухал. Тогтмол ногоон график таныг тогтвортой ажилладаг гэдгийг харуулах ч reviewer-ууд энэ графикийг хуурч болдгийг сайн мэднэ. Өдөр бүр утгагүй commit хийж графикаа ногоон болгох нь туршлагатай reviewer-ийн нүдэнд илт харагдах бөгөөд итгэлийг бууруулна. Графикийн төлөө биш, ажлынхаа төлөө commit хий. Мөн private repository-уд дахь ажил тань графикт анхдагчаар харагдахгүй. Хэрвээ та ихэнх ажлаа private repository-д хийдэг бол профайлын тохиргооноос “Private contributions”-ийг идэвхжүүлж, агуулгыг нь нууцалсан хэвээр зөвхөн тоог нь харуулж болно.
Энэ хичээлийн хамгийн чухал санааг одоо шууд хэлье: гурван сайн repository гучин хагас дутуу repository-гоос илүү. Олон хүн repository-ийн тоо их байх тусам сайн гэж боддог. Гэтэл reviewer-ийн хувьд “test”, “test2”, “my-first-repo”, “python-practice” гэх мэт нэртэй, README-гүй, хагас дутуу repository-уудын урт жагсаалт тань дуусгаж чаддаггүй хүн гэсэн сэтгэгдэл төрүүлдэг. Харин цөөн, гүйцэд, сайн тайлбарласан repository тань ажлаа эцэс хүртэл хийдэг хүн гэдгийг харуулна.
Тиймээс хуучин дадлагын repository-уудаа юу хийх вэ? Гурван сонголт бий. Нэгдүгээрт, private болгох: тэдгээр нь танд хадгалагдсан хэвээр байх ч бусдад харагдахгүй. Хоёрдугаарт, archive хийх: repository-ийн Settings-ийн доод хэсэгт “Archive this repository” сонголт бий бөгөөд энэ нь repository-г зөвхөн уншигдах горимд шилжүүлж, "энэ бол хуучин, дууссан ажил" гэсэн тэмдэг тавина. Гуравдугаарт, устгах: хэрвээ огт хэрэггүй бол. Ямар ч сонголт хийсэн бай, Түвшин 1-ийн git-dadlaga шиг дадлагын фолдерууд таны компьютер дээр үлдэх нь хангалттай, тэднийг GitHub руу илгээх шаардлагагүй.
Нэг зүйлийг тусгайлан хэлье: portfolio бол нотолгоо учраас тэр нь үнэн байх ёстой. Сургалтын явцад бүтээсэн төсөл бол ичих зүйл биш, харин сурч буй таны бодит ажил юм. Түүнийг нуух шаардлагагүй, README-д “Built while learning Python” гэх мэт энгийн өгүүлбэрээр үнэнээр нь хэлж болно. Ихэнх reviewer сургалтын төслийг хүлээн зөвшөөрдөг, тэд таны хэр хурдан сурдагийг, сурсан зүйлээ хэрхэн хэрэглэдгийг харахыг хүсдэг.
Сургалтын төслийг илүү үнэ цэнтэй болгох хамгийн сайн арга бол түүнийг өөрийн санаагаар өргөтгөх явдал. 3.4 дүгээр хичээлийн "Нэмэлт боломжууд" хэсэгт дурдсан ангиллын нийлбэр, эсвэл өөрийн тань хэрэгцээнээс төрсөн шинэ боломж таны бие даан сэтгэх чадварыг харуулна. Reviewer заавар дагасан кодыг өөрийн шийдлээс хурдан ялгадаг бөгөөд хоёр дахь нь үргэлж илүү үнэлэгддэг. Харин бусдын кодыг өөрийнх мэт харуулах нь хэзээ ч зөв биш: тэр нь илэрвэл таны бусад бүх ажилд итгэх итгэлийг устгана.
Хүсвэл browser-ийнхоо incognito буюу хувийн цонхыг нээгээд, GitHub-д нэвтрэлгүйгээр өөрийн профайлын хуудас руу орж үзээрэй. Энэ бол яг танихгүй reviewer-ийн харах дүр зураг. Өөрөөсөө асуугаарай: хэдхэн секундэд энэ хүн юу хийдгийг ойлгож байна уу? Онцолсон repository-ууд хамгийн сайн ажлыг харуулж байна уу? Эхний repository-г нээхэд README шууд ойлгомжтой юу? Хариулт "үгүй" байгаа газар бүр бол засах дараагийн жижиг алхам.
Commit-ууд графикт харагдахгүй байх. Хэрвээ та commit хийж push хийсэн хэрнээ идэвхийн график ногоон болохгүй байвал хамгийн түгээмэл шалтгаан нь commit-ын имэйл таны GitHub бүртгэлд бүртгэлгүй байх явдал. git config --global user.email-ээр имэйлээ шалгаж, GitHub-ийн Settings, Emails хэсэгт тэр имэйл бүртгэлтэй эсэхийг харьцуулаарай. Мөн зөвхөн үндсэн салаа руу хийсэн commit тоологддог тул өөр салаан дээрх commit-ууд main-д нэгтгэгдэх хүртэл графикт харагдахгүй. График шинэчлэгдэхэд заримдаа хэдэн минутаас хэдэн цаг шаардагдана.
Профайлын README харагдахгүй байх. Repository-ийн нэр username-тэй яг ижил байх ёстой, том жижиг үсэг, зураас бүгд. Мөн repository public байх, README.md файл үндсэн фолдерт байх ёстой. Эдгээрийн аль нэг нь зөрвөл GitHub түүнийг ердийн repository гэж үзнэ.
Fork хийсэн repository-ууд жагсаалтыг дүүргэх. Хэрвээ та бусдын repository-г туршихаар GitHub дээр fork буюу өөртөө хуулбарласан бол тэдгээр нь таны repository-уудын жагсаалтад харагдаж, өөрийн ажлыг тань дарж болно. Хэрэггүй болсон fork-уудыг устгаж, эсвэл ядаж онцолсон repository-уудаа өөрийн ажлаар бүрдүүлээрэй.
Онцлох repository сонгох цонхонд repository олдохгүй байх. “Customize your pins” цонх анхдагчаар таны өөрийн repository-уудыг харуулна. Хэрвээ хайж буй repository тань харагдахгүй байвал цонхны хайлтын талбарт нэрийг нь бичээрэй. Private repository онцолж болох ч тэр нь зөвхөн танд харагдах тул reviewer-т нөлөөгүй гэдгийг санаарай.
Таны GitHub бол ажлын нотолгоо, дархны үзэсгэлэн юм. Reviewer ихэвчлэн хэдхэн минут зарцуулж, профайл, дараа нь онцолсон repository-ийн README ба бүтэц, сонирхвол commit-ын түүх ба кодыг гэсэн дарааллаар хардаг тул эхний шатнууд хамгийн их нөлөөтэй. Профайлд жинхэнэ нэр, энгийн үнэн bio, цэвэр зураг байна. Зургаа хүртэл repository-г онцолж, зөвхөн README, цэвэр бүтэц, ойлгомжтой түүх, лиценз, About тайлбартай, ажилладаг repository-уудыг сонгоно. Профайлын README сонголт бөгөөд энгийн байлгах нь дээр. Commit-ын түүх таны ажиллах арга барилыг харуулна. Идэвхийн графикийг хуурах гэж оролдохгүй. Гурван сайн repository гучин хагас дутуугаас илүү: хуучин дадлагын repository-уудыг private болгох, archive хийх, эсвэл устгана. Сургалтын төслийг үнэнээр нь танилцуулж, өөрийн санаагаар өргөтгөх нь хамгийн үнэ цэнтэй.
Ингээд Бүлэг 5 дууслаа. Таны repository одоо мэргэжлийн хэлбэртэй, профайл тань таныг танилцуулдаг боллоо. Дараагийн Бүлэгт бид GitHub-ийн хамтын ажиллагааны хэрэгслүүдтэй танилцана. Бүлэг 6-ийн эхний хичээлд issue-г сурна: өөрийн төслийн хийх ажлуудыг GitHub дээр бүртгэж, тодорхой гарчигтай болгож, commit message-ээр хаах аргыг үзнэ.
Бүртгэлтэй болсноор энэ сургалтын бүх хичээлд хандах эрх авна.