├── images ├── git-tut1.png ├── git-tut2.png ├── git-tut3.png ├── git-tut4.png ├── git-tut5.png ├── git-tut6.png ├── git-tut7.png ├── git-tut8.png ├── git-tut9.png ├── git-tut10.png ├── git-tut-pull1.png ├── git-tut-pull2.png ├── git-tut-pull3.png ├── git-tut-pull4.png ├── git-tut-pull5.png ├── git-tut-pull6.png ├── request-pull1.png ├── request-pull2.png ├── request-pull3.png ├── request-pull4.png ├── request-pull5.png ├── request-pull6.png ├── request-pull7.png ├── request-pull8.png ├── request-pull9.png ├── request-pull10.png ├── request-pull11.png └── request-pull12.png ├── .gitignore ├── .README.md.swp ├── LICENSE └── README.md /images/git-tut1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/git-tut1.png -------------------------------------------------------------------------------- /images/git-tut2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/git-tut2.png -------------------------------------------------------------------------------- /images/git-tut3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/git-tut3.png -------------------------------------------------------------------------------- /images/git-tut4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/git-tut4.png -------------------------------------------------------------------------------- /images/git-tut5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/git-tut5.png -------------------------------------------------------------------------------- /images/git-tut6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/git-tut6.png -------------------------------------------------------------------------------- /images/git-tut7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/git-tut7.png -------------------------------------------------------------------------------- /images/git-tut8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/git-tut8.png -------------------------------------------------------------------------------- /images/git-tut9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/git-tut9.png -------------------------------------------------------------------------------- /images/git-tut10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/git-tut10.png -------------------------------------------------------------------------------- /images/git-tut-pull1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/git-tut-pull1.png -------------------------------------------------------------------------------- /images/git-tut-pull2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/git-tut-pull2.png -------------------------------------------------------------------------------- /images/git-tut-pull3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/git-tut-pull3.png -------------------------------------------------------------------------------- /images/git-tut-pull4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/git-tut-pull4.png -------------------------------------------------------------------------------- /images/git-tut-pull5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/git-tut-pull5.png -------------------------------------------------------------------------------- /images/git-tut-pull6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/git-tut-pull6.png -------------------------------------------------------------------------------- /images/request-pull1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/request-pull1.png -------------------------------------------------------------------------------- /images/request-pull2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/request-pull2.png -------------------------------------------------------------------------------- /images/request-pull3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/request-pull3.png -------------------------------------------------------------------------------- /images/request-pull4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/request-pull4.png -------------------------------------------------------------------------------- /images/request-pull5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/request-pull5.png -------------------------------------------------------------------------------- /images/request-pull6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/request-pull6.png -------------------------------------------------------------------------------- /images/request-pull7.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/request-pull7.png -------------------------------------------------------------------------------- /images/request-pull8.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/request-pull8.png -------------------------------------------------------------------------------- /images/request-pull9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/request-pull9.png -------------------------------------------------------------------------------- /images/request-pull10.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/request-pull10.png -------------------------------------------------------------------------------- /images/request-pull11.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/request-pull11.png -------------------------------------------------------------------------------- /images/request-pull12.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bantenprov/cara-penggunaan-github/HEAD/images/request-pull12.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Node rules: 2 | ## Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 3 | .grunt 4 | 5 | ## Dependency directory 6 | ## Commenting this out is preferred by some people, see 7 | ## https://docs.npmjs.com/misc/faq#should-i-check-my-node_modules-folder-into-git 8 | node_modules 9 | 10 | # Book build output 11 | _book 12 | 13 | # eBook build output 14 | *.epub 15 | *.mobi 16 | *.pdf 17 | -------------------------------------------------------------------------------- /.README.md.swp: -------------------------------------------------------------------------------- 1 | b0nano 2.8.6 2 | feryubuntuREADME.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Provinsi Banten 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Cara penggunaan github 2 | Cara penggunaan github untuk berkolaborasi mengelola pekerjaan 3 | 4 | 1. [Untuk Kontributor](#untuk-kontributor) 5 | 6 | 2. [Untuk non Kontributor](#untuk-non-kontributor) 7 | 8 | 3. [Menggabungkan Dua Repository](#menggabungkan-dua-repository) 9 | 10 | 3.1. [Menggunakan Version](#menggunakan-version) 11 | 12 | 3.2. [Menggunakan Upstream](#menggunakan-upstream) 13 | 14 | 4. [Menggabungkan Dua Branch](#menggabungkan-dua-branch) 15 | 16 | 17 | ## Untuk Kontributor 18 | ### 1. git clone 19 | 20 | Perintah "**git clone**" digunakan untuk mengunduh code yang ada pada repository. 21 | 22 | **git clone < repository yang akan di gunakan >** 23 | 24 | **contoh penggunaan perintah "git clone":** 25 | ```bash 26 | $ git clone https://github.com/bantenprov/advancetrust.git 27 | $ cd advancetrust/ 28 | ``` 29 | 30 | 31 | 32 | ### 2. git pull 33 | Perintah git pull ini akan sering kali digunakan apabila kita dalam bekerja membuat suatu aplikasi atau mengembangkan aplikasi secara tim. 34 | 35 | **contoh penggunaan git pull** 36 | ```bash 37 | $ git pull origin master 38 | ``` 39 | 40 | 41 |

42 | Setelah berhasil menjalankan perintah **git clone**, di sini akan di contohkan bagaimana menambahkan folder baru yang di beri nama **flowchart** 43 | 44 | ```bash 45 | $ mkdir flowchart 46 | ``` 47 | 48 | 49 | setelah menjalankan perintah diatas maka akan ada folder baru dengan nama **flowchart**, selanjutnya berpindah ke folder / directory yang telah dibuat tadi, dengan menggunakan perintah: 50 | 51 | ```bash 52 | $ cd flowchart 53 | ``` 54 | 55 | 56 | setelah berada di folder / directory "**flowchart**", pada contoh ini akan mencoba menambahkan file baru yang di beri nama "**.gitignore**" dengab cara menjalankan perintah seperti di bawah ini: 57 | 58 | ```bash 59 | $ echo "" > .gitignore 60 | ``` 61 | 62 | 63 | jika berhasil maka akan ada file baru dengan nama "**.gitignore**", untuk melihat file yang telah berhasil di buat tadi jalankan perintah berikut: 64 | 65 | ```bash 66 | $ ls -la 67 | ``` 68 | maka akan terlihat seperti gambar berikut: 69 | 70 | 71 | 72 | sampai pada langkah ini kita telah berhasil menambahkan folder "**flowchart**" dan di dalam folder tersebut telah ada file "**.gitignore**" 73 | 74 | berikutnya kita akan update folder dan file yang sudah di buat tadi ke repository yang di clone di awal tadi dengan cara kita kembali ke folder awal yang di clone tadi dengan perintah berikut: 75 | 76 | ### 3. git add 77 | Dengan menggunakan perintah ini, maka artinya sama aja kita menyuruh agar di git untuk melakukan penambahan (add) pada semua file dalam folder 78 | 79 | 80 | ```bash 81 | $ cd ../ 82 | $ git add flowchart/ 83 | $ git status 84 | 85 | ``` 86 | jika semua berhasil dan tidak ada masalah maka akan tampil seperti gambar berikut: 87 | 88 | 89 | 90 | perintah selanjutnya 91 | 92 | ```bash 93 | 94 | $ git commit -m "" 95 | 96 | ``` 97 | 98 | 99 | 100 | ### 4. git push 101 | **git push** adalah memasukkan file-file atau direktori hasil kerjaan kita yang dilakukan setelah melakukan commit ke tempat penyimpanan projeknya (misal dalam kasus ini adalah github). 102 | 103 | terakhir kita akan menjalankan perintah **git push** 104 | 105 | ```bash 106 | $ git push origin master 107 | ``` 108 | jika tidak ada error maka akan tampil seperti gambar berikut: 109 | 110 | 111 | 112 | 113 | > patch yang dikirim baru akan tampil pada repository jika sudah di commit 114 | 115 | ## Untuk non Kontributor 116 | 117 | ### 1. Fork 118 | Fork terlebih dahulu repository yg ingin di patch. 119 | 120 | Klik tombol fork 121 | 122 | 123 | 124 | ### 2. Copy link untuk clone 125 | 126 | 127 | 128 | lalu jalankan perintah ini: 129 | 130 | **git clone < url clone>** 131 | 132 | ```bash 133 | $ git clone https://github.com/feripratama/noncontrib.git 134 | ``` 135 | 136 | 137 | 138 | setelah itu pindah ke folder / directory yang telah di clone 139 | 140 | ```bash 141 | $ cd noncontrib 142 | ``` 143 | 144 | 145 | 146 | setelah di dalam directory **noncontrib** (sesuaikan dengan directory yang ada) 147 | 148 | tambahkan file baru pada local repository, dengan mejalankan perintah seperti berikut: 149 | 150 | ```bash 151 | $ echo "" > newFile.php 152 | ``` 153 | atau tambahkan file yang anda ingin upload dari folder lain, misalkan nama foldernya adalah "folder-asal" (sesuaikan path folder-asal tersebut apa perintah dibawah ini: 154 | 155 | ```bash 156 | $ cp -R ../folder-asal . 157 | ``` 158 | 159 | 160 | 161 | jika tidak ada error, maka lanjutkan lagi dengan mengetikkan perintah **git add**: 162 | 163 | ```bash 164 | $ git add -A 165 | $ git status 166 | ``` 167 | 168 | 169 | 170 | jika menambahkan file seperti contoh diatas, maka terlihat ada penambahan file baru " **newFile.php** " 171 | 172 | lanjut tambahkan branch baru pada repository dengan perintah sebagai berikut: 173 | 174 | ```bash 175 | $ git checkout -b patch-5 176 | ``` 177 | 178 | 179 | 180 | sejauh ini kita telah berhasil menambahkan file baru dan menambahkan branch **patch-5** 181 | 182 | lalu lanjut mengetikkan perintah **git commit** 183 | 184 | ```bash 185 | $ git commit -m "add newFile.php" 186 | ``` 187 | 188 | 189 | jika berhasil maka tampilan seperti gambar di atas 190 | maka lanjutkan dengan mengetikkan perintah **git push** 191 | 192 | ```bash 193 | $ git push origin patch-5 194 | ``` 195 | 196 | 197 | 198 | setelah semua berhasil, buka repository yang di fork di awal tadi 199 | 200 | 201 | 202 | terlihat ada notice patch-5 sama seperti nama branch yang kita tambahkan tadi, lalu klik tombol **Compare & pull request** 203 | 204 | setelah tombol **Compare & pull request** di klik maka akan di bawa ke halaman Pull request. 205 | 206 | 207 | 208 | lalu klik tombol **Create pull request** 209 | 210 | jika berhasil maka tampilan akan terlihat seperti gambar di bawah: 211 | 212 | 213 | 214 | ## Menggabungkan Dua Repository 215 | Pada bagian ini kita menggabungkan repository yang kita miliki dan berasal dari fork repository utama. 216 | 217 | ### Menggunakan Version 218 | #### jalankan git remote add 219 | *misalkan kita alias yang akan gunakan sebagai remote repository adalah: version-02 dan repo yang akan di remmote untuk digabungkan adalah https://github.com/bantenprov/dashboard-epormas.git* 220 | 221 | ```bash 222 | git remote add version-02 https://github.com/bantenprov/dashboard-epormas.git 223 | 224 | ``` 225 | #### kemudian jalankan git pull 226 | kalau tadi kita menggunakan *version-02* untuk alias maka perintahnya menjadi: 227 | 228 | ```bash 229 | git pull version-02 master 230 | ``` 231 | #### git status 232 | 233 | ```bash 234 | git status 235 | ``` 236 | #### git add -A 237 | untuk menambahkan semua perubahan yang terjadi 238 | ```bash 239 | git add -A 240 | ``` 241 | #### git commit 242 | untuk menambahkan semua perubahan yang terjadi 243 | ```bash 244 | git commit -m "gabungkan dua repo" 245 | ``` 246 | #### git push 247 | untuk mengirimkan perubahan yang sudah di commit ke git repo dengan branch *version-01*, lakukan 248 | ```bash 249 | git push version-01 250 | ``` 251 | 252 | ### Menggunakan Upstream 253 | #### jalankan git remote add 254 | *misalkan kita alias yang akan gunakan sebagai remote repository adalah: upstream dan repo yang akan di remmote untuk digabungkan adalah https://github.com/bantenprov/document-management-system.git* 255 | 256 | ```bash 257 | git remote add upstream https://github.com/bantenprov/document-management-system.git 258 | 259 | ``` 260 | #### kemudian jalankan git pull 261 | kalau tadi kita menggunakan *upstream* untuk mengambil perubahan yang terjadi di repo asli agar tidak terjadi konflik. Penggunaan *--rebase* berfungsi untuk memodifikasi riwayat commit yang sudah ada. Sebagai contoh, rebase dapat dipakai untuk menggantikan merge. Walaupun memberikan hasil yang sama, keduanya memiliki "efek samping" yang berbeda. Operasi merge akan menghasilkan commit baru sementara rebase tidak! Dengan demikian, rebase menghasilkan riwayat yang lebih rapi tanpa percabangan. 262 | 263 | ```bash 264 | git pull --rebase upstream master 265 | ``` 266 | #### git status 267 | 268 | ```bash 269 | git status 270 | ``` 271 | #### git add -A 272 | untuk menambahkan semua perubahan yang terjadi 273 | ```bash 274 | git add -A 275 | ``` 276 | #### git checkout dan patch 277 | untuk mengecek ada tidaknya patch yang ingin dipakai dan membuat patchnya 278 | ```bash 279 | git checkout -b patch-1 280 | ``` 281 | #### git commit 282 | untuk menambahkan semua perubahan yang terjadi 283 | ```bash 284 | git commit -m "gabungkan dua repo" 285 | ``` 286 | #### git push 287 | untuk mengirimkan perubahan yang sudah di commit ke git repo dengan branch *version-01*, lakukan 288 | ```bash 289 | git push origin patch-1 290 | ``` 291 | ## Menggabungkan Dua Branch 292 | catatan ini bertujuan menggabungkan salah satu branch ke dalam master 293 | ```bash 294 | git checkout master 295 | git merge dev 296 | ``` 297 | --------------------------------------------------------------------------------