[![Open Source Love](https://badges.frapsoft.com/os/v1/open-source.svg?v=103)](https://github.com/ellerbrock/open-source-badges/)
[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)
[![Open Source Helpers](https://www.codetriage.com/roshanjossey/first-contributions/badges/users.svg)](https://www.codetriage.com/roshanjossey/first-contributions)

# "Contribute" ຜົນງານໃນ GitHub ຮ່ວມກັບຄົນອື່ນເປັນຄັ້ງທຳອິດແມ່ນບໍ່?

ມັນເປັນເລື່ອງທີ່ຂ້ອງຂ້າງຍາກໜ້ອຍໜຶ່ງ, ແຕ່ກ້າວທຳອິດໃນການເລີ່ມຕົ້ນເຮັດຫຍັງບາງຢ່າງມັນກໍ່ຈະຍາກແບບນີ້ສະເໝີ ໂດຍສະເພາະເວລາທີ່ຕ້ອງຮ່ວມງານກັບຄົນອື່ນ ເພາະເມື່ອເຮົາໄດ້ເຮັດຫຍັງຜິດພາດມັນກໍ່ມັກຈະເຮັດໃຫ້ເຮົາບໍ່ສະບາຍໃຈ, ແຕ່ວ່າໃນໂລກຂອງໂອເພັນຊອສ (open source) ຄືໂລກທີ່ເຮົາຕ້ອງໄດ້ເຮັດວຽກຮ່ວມກັນ! ເຮົາຈຶ່ງຢາກໃຫ້ຜູ້ທີ່ເຂົ້າມາໃໝ່ໄດ້ຮຽນຮູ້ວິທີການ "ຄອນທຣິບິ້ວ" ຜົນງານຮ່ວມກັບຄົນອື່ນໃນ GitHub ແບບງ່າຍໆ.

ການອ່ານບົດຄວາມ ແລະ ການທີ່ໄດ້ທົດລອງເຮັດຕົວຢ່າງຕ່າງໆກໍ່ອາດຈະຊ່ວຍໄດ້, ແຕ່ເຖິງຢ່າງໃດກໍ່ຕາມ ຄົງຈະບໍ່ມີສິ່ງໃດເໜືອໄປກວ່າການທີ່ເຮົາໄດ້ລົງມືເຮັດດ້ວຍຕົນເອງ!. ໃນໂປຣເຈັກນີ້ຈະສອນໃຫ້ມືໃໝ່ຮູ້ຈັກການສົ່ງ "contribution" ທຳອິດໄດ້ຢ່າງງ່າຍໆ.

ໃຫ້ຈື່ໄວ້ວ່າ: ຄວາມພະຍາຍາມຢູ່ທີ່ໃດ ຄວາມພະຍາຍາມກໍ່ຢູ່ທີ່ນັ້ນເຊັ່ນກັນ!

ຖ້າພ້ອມແລ້ວເຮົາມາລອງສົ່ງ contibution ທຳອິດກັນໄດ້ພຽງບໍ່ເທົ່າໃດຂັ້ນຕອນດ້ານລຸ່ມໄປພ້ອມໆກັນເລີຍ, ບອກເລີຍວ່າງ່າຍກວ່າປອກກ້ວຍ.

<img align="right" width="300" src="https://firstcontributions.github.io/assets/Readme/fork.png" alt="fork this repository" />

ຫາກໃຜຍັງບໍ່ໄດ້ຕິດຕັ້ງ git ລົງໃນເຄື່ອງ, ທ່ານສາມາດກົດລິ້ງ[ຕິດຕັ້ງໄດ້ທີ່ນີ້]( https://help.github.com/articles/set-up-git/ )

## ກົດ "Fork" ໂປຣເຈັກນີ້

ໂປຣເຈັກຫຼັກນີ້ມັກຈະເອີ້ນວ່າ ໂປຣເຈັກຕົ້ນນ້ຳ, ທ່ານສາມາດ fork ໂປຣເຈັກຕົ້ນນ້ຳນີ້ໄປຍັງ repo ຂອງ account ຂອງທ່ານເອງໄດ້ໂດຍການກົດປຸ່ມ "Fork" ທີ່ດ້ານເທິງຂອງໜ້ານີ້.

ແລ້ວໂປຣເຈັກນີ້ກໍ່ຈະຖືກຄັດລອກໄປທີ່ account ຂອງທ່ານ.

## ກົດປຸ່ມ "Clone" ໂປຣເຈັກນີ້

<img align="right" width="300" src="https://firstcontributions.github.io/assets/Readme/clone.png" alt="clone this repository" />

ມາຮອດຂັ້ນຕອນນີ້ເຮົາກໍ່ Clone ໂປຣເຈັກລົງມາທີ່ຄອມພິວເຕີຂອງເຮົາໂດຍການກົດທີ່ປຸ່ມ "Clone" ແລ້ວເລືອກ *Copy to clipboard* (ຄຳສັ່ງຄັດລອກ)

ເປີດ terminal ຂຶ້ນມາ (ຕົວຢ່າງ Terminal ໃນ MacOS ຫຼື cmd ໃນ Windows) ແລ້ວພິມຄຳສັ່ງ git ຕໍ່ໄປນີ້:

```
git clone "url ທີ່ຄັດລອກໄວ້"
```
"url ທີ່ຄັດລອກໄວ້" (ບໍ່ຕ້ອງໃສ່ " ") ຄື url ຂອງໂປຣເຈັກຂອງທ່ານ ທ່ານສາມາດກັບໄປເບິ່ງວິທີການຄັດລອກ url ໄດ້ຈາກຫົວຂໍ້ກ່ອນໜ້ານີ້

<img align="right" width="300" src="https://firstcontributions.github.io/assets/Readme/copy-to-clipboard.png" alt="copy URL to clipboard" />

ຕົວຢ່າງ:
```
git clone https://github.com/this-is-you/first-contributions.git
```
`this-is-you` ຄືຊື່ username ຂອງທ່ານຢູ່ເທິງ GitHub, ມາຮອດບ່ອນນີ້ທ່ານໄດ້ "Clone" ໂປຣເຈັກ first-contributions ໄປໄວ້ທີ່ຄອມພິວເຕີຂອງທ່ານແລ້ວ.

## ສ້າງ branch

ໃນ terminal ປ່ຽນ directory ໄປບ່ອນທີ່ທ່ານ Clone ໂປຣເຈັກໄວ້:

```
cd first-contributions
```
ບ່ອນນີ້ໃຫ້ສ້າງ branch (ແຕກສາຂາອອກມາໃໝ່) ດ້ວຍຄຳສັ່ງ `git checkout`:
```
git checkout -b <ຊື່ branch>
```

ຕົວຢ່າງ:
```
git checkout -b add-phongphat-khamphiew
```
(ປົກກະຕິຊື່ຂອງ branch ບໍ່ຈຳເປັນຕ້ອງມີຄຳວ່າ *add* ແຕ່ໃນໂປຣເຈັກນີ້ຢາກໃຫ້ໃຊ້ add-ຊື່-ຂອງ-ທ່ານ ເພາະຊື່ຂອງທ່ານຈະໄປສະແດງຢູ່ທີ່ລາຍການ Contributors (ຜູ້ເຂົ້າຮ່ວມ) ຂອງໂປຣເຈັກນີ້

## ເພີ່ມຫຼືແກ້ໄຂ code ໄດ້ເລີຍ, ແຕ່ຢ່າລືມ "Commit" ບອກວ່າທ່ານໄດ້ເຮັດຫຍັງລົງໄປແລ້ວແນ່

ຕອນນີ້ໃຫ້ເປີດໄຟລ໌ `Contributors.md` ໃນໂປຣແກຣມ text editor ເພີ່ມຊື່ຂອງທ່ານລົງໄປ ຈາກນັ້ນບັນທຶກໄຟລ໌

<img align="right" width="450" src="https://firstcontributions.github.io/assets/Readme/git-status.png" alt="git status" />

ໃນ terminal ຖ້າທ່ານຢູ່ທີ່ directory ຂອງໂປຣເຈັກ ໃຫ້ລອງພິມຄຳສັ່ງ `git status` ຈະເຫັນວ່າທ່ານໄດ້ປ່ຽນແປງໄຟລ໌ໃດແນ່ແລ້ວ.

ເພີ່ມການປ່ຽນແປງນັ້ນໆເຂົ້າໄປ branch ທີ່ຫາກໍ່ສ້າງດ້ວຍຄຳສັ່ງ `git add`:
```
git add Contributors.md
```

ຕອນນີ້ "Commit" ການປ່ຽນແປງດັ່ງກ່າວດ້ວຍຄຳສັ່ງ `git commit`:
```
git commit -m "Add <ຊື່ຂອງທ່ານ> to Contributors list"
```
ແທນບ່ອນ `<ຊື່ຂອງທ່ານ>` ດ້ວຍຊື່ແທ້ຂອງທ່ານ.

## "Push" code ທີ່ປ່ຽນແປງຂຶ້ນ GitHub

"Push" ຜົນງານທີ່ທ່ານໄດ້ເຮັດໃນຂັ້ນຕອນກ່ອນໜ້ານີ້ຂຶ້ນ GitHub ດ້ວຍຄຳສັ່ງ `git push`:
```
git push origin <ຊື່ branch ຂອງທ່ານ>
```
ແທນບ່ອນ `<ຊື່ branch ຂອງທ່ານ>` ດ້ວຍຊື່ຂອງ branch ທີ່ທ່ານໄດ້ສ້າງໄວ້ໃນຫົວຂໍ້ກ່ອນໜ້ານີ້ (add-ຊື່-ຂອງ-ທ່ານ)

## ສົ່ງຜົນງານ ແລະ ລໍຖ້າຣີວິວຈາກເຈົ້າຂອງໂປຣເຈັກ

ໄປທີ່ repository ຂອງທ່ານເທິງ GitHub ກົດທີ່ `Compare & pull request`

<img style="float: right;" src="https://firstcontributions.github.io/assets/Readme/compare-and-pull.png" alt="create a pull request" />

ຕອນນີ້ກໍ່ສົ່ງ Pull Request ໄປທີ່ໂປຣເຈັກຫຼັກ ຫຼື ໂປຣເຈັກຕົ້ນນ້ຳໄດ້ເລີຍ

<img style="float: right;" src="https://firstcontributions.github.io/assets/Readme/submit-pull-request.png" alt="submit pull request" />

ເຮົາຈະທຳການ "Merge" ຫຼື ລວມຜົນງານທີ່ທ່ານໄດ້ປ່ຽນແປງ code ມາທີ່ master branch ຂອງໂປຣເຈັກນີ້, ທ່ານຈະໄດ້ຮັບອີເມວເມື່ອເຮົາໄດ້ທຳການ Merge ຜົນງານຂອງທ່ານສຳເລັດແລ້ວ.

## ຈະເຮັດຫຍັງຕໍ່ຫຼັງຈາກນີ້?
ຍິນດີນຳ, ທ່ານໄດ້ປະຕິບັດຂັ້ນຕອນຂອງການເຮັດ contribute ຄື fork -> clone -> edit -> pull request ເຊິ່ງຂັ້ນຕອນຕ່າງໆເຫຼົ່ານີ້ເປັນສິ່ງທີ່ທ່ານຕອງໄດ້ພົບເມື່ອທ່ານເປັນ contributor
ສະເຫຼີມສະຫຼອງໃຫ້ແກ່ການມີສ່ວນຮ່ວມຂອງທ່ານ, ຢ່າລືມແບ່ງປະສົບການທີ່ທ່ານໄດ້ຮັບໃຫ້ແກ່ໝູ່ເພື່ອນຂອງທ່ານ ໂດຍໄປທີ່ [ເວັບໄຊນີ້](https://firstcontributions.github.io/#social-share)

ຈາກນີ້ທ່ານສາມາດ contribute ໃຫ້ໂປຣເຈັກອື່ນໆໄດ້, ໂດຍທາງເຮົາໄດ້ເຮັດລາຍການໂປຣເຈັກທີ່ງ່າຍຕໍ່ການເລີ່ມຕົ້ນບາງສ່ວນໄວ້ໃຫ້ [ລາຍຊື່ໂປຣເຈັກທີ່ໜ້າສົນໃຈ](https://firstcontributions.github.io/#project-list)

### [ຂໍ້ມູນອື່ນໆເພີ່ມເຕີມ](../additional-material/git_workflow_scenarios/additional-material.md)

## ເຝິກການ contribute ໂດຍໃຊ້ເຄື່ອງມືອື່ນໆ

|<a href="../github-desktop-tutorial.md"><img alt="GitHub Desktop" src="https://desktop.github.com/images/desktop-icon.svg" width="100"></a>|<a href="../github-windows-vs2017-tutorial.md"><img alt="Visual Studio 2017" src="https://upload.wikimedia.org/wikipedia/commons/c/cd/Visual_Studio_2017_Logo.svg" width="100"></a>|<a href="../gitkraken-tutorial.md"><img alt="GitKraken" src="https://firstcontributions.github.io/assets/Readme/gk-icon.png" width="100"></a>|
|---|---|---|
|[GitHub Desktop](../github-desktop-tutorial.md)|[Visual Studio 2017](../github-windows-vs2017-tutorial.md)|[GitKraken](../gitkraken-tutorial.md)|

