Feel free to create new file, don't hesitate to pull your code, the most important thing is that the file name here must match your nickname so that file does not conflict with other people.

Overview

Hacktoberfest Indonesia

Apa Itu Hacktoberfest ?

Hacktoberfest adalah acara tahunan yang bertujuan untuk mendorong berkontribusi kedalam ekosistem open source .

Acara ini bebas untuk siapa saja baik untuk pemula hingga professional sekalipun , berlangsung mulai dari tanggal 1 oktober hingga 31 oktober . acara tahun ini di jalankan oleh digital ocean , github dan dev.to . target dari acara ini adalah peserta dapat melakukan 4 pull request di antara tanggal 1 hingga 31 oktober 2021.

Cara daftar Hacktoberfest

  • Buka link ini https://hacktoberfest.com/
  • klik Tombol Start Hacking
  • klik signup with github
  • Centang informasi sesuai dengan informasi dirimu sendiri

Mulailah berkontribusi di berbagai repository di github

Cara Berkontribusi di Repository Ini

  • Tambahkan File Javascript apapun yang kalian punya, khususnya untuk interview
  • Khusus Javascript
  • Gunakanlah Semantic Commit

Bagaimana cara berkontribusi di Repository github ?

Berikut langkah-langkahnya secara singkat:

  1. Fork it!

  2. Buatlah branch fitur baru: git checkout -b my-new-feature

  3. Commit perubahannya: git commit -am 'Add some features'

  4. Push ke branch di remote: git push origin my-new-feature

  5. Buat pull request

  6. Cari proyek open source.
    Kali ini, saya sebagai pengembang Android akan menggunakan awesome-for-beginners sebagai contoh.

  7. Cari info tentang aturan kontribusi, atau hubungi developer yang terkait baik via email atau media sosial.

  8. Jika memang tidak tertera aturan kontribusi dan sang developer tidak merespon, anda bisa langsung melakukan fork proyek yang akan anda kontribusikan.

  9. Setelah selesai fork, maka repository akan masuk ke daftar repo milik anda.


Time to GO CODE ;)

NB: gunakan git --help untuk melihat perintah-perintah git lainnya.

  1. Cloning project yang sudah anda fork ke akun anda

    git clone <alamat-repo>
    

    Contoh:

    git clone [email protected]:CreatorB/MaterialTabs.git
    
  2. Untuk mempermudah pengembangan, hendaknya kita menambahkan repository pusat dengan lokal milik kita agar tidak terjadi konflik dengan kontributor lainnya.

    git remote add <nama-repo> <alamat-repo>
    

    Contoh:

    git remote add upstream git://github.com/neokree/MaterialTabs.git
    
  3. Setelah remote repositori selesai, buatlah branch baru agar tidak merusak history branch utama, dan juga untuk memudahkan racking code.

    git checkout -b <nama-cabang>
    

    Contoh:

    git checkout -b sample-project
    
  4. Di cabang baru ini lah kita akan untuk melakukan perubahan kode, yang nantinya bisa kita push ke repo pusat. Untuk berpindah branch bisa kita gunakan git checkout <nama-cabang>, dimana <nama-cabang> adalah nama yang anda gunakan pada langkah sebelumnya.

  5. Setelah melakukan perubahan, kita bisa lakukan commit berisi deskripsi singkat tentang perubahan yang anda lakukan. Tetapi jika ada penambahan file, bisa menggunakan perintah git add <nama-file-baru>, atau gunakan git add . untuk menambahkan semua perubahan yang ada di direktori tersebut secara rekursif. Setelah itu baru bisa kita commit.

    git commit -m "add: <pesan singkat>"
    

    Contoh:

    git commit -m "fix: sample project and added gradle compile"
    
  6. Setelah selesai melakukan commit, kita akan melakukan persiapan untuk membuat pull request (biasa disingkat PR) ke repo pusat. Pertama kita pindah branch kembali ke master.

    git checkout master
    
  7. Setelah itu, kita akan mengambil kode lagi dari pusat, untuk memastikan tidak terdapat konflik pada kontribusi kode kita. Konflik dapat terjadi jika dua atau lebih kontributor melakukan perubahan pada satu berkas, terutama jika perubahan dilakukan pada baris yang sama, terlepas dari apakah tujuan perubahan sama atau tidak.

    git fetch upstream
    git merge upstream/master
    
  8. Dengan proses diatas, setidaknya kita telah bisa memastikan bahwa tidak ada konflik dengan repo pusat. Sekarang kita kembali ke branch lokal development kita sample-project.

    git checkout sample-project
    
  9. Setelah itu, kita gabungkan cabang tersebut dengan cabang utama, sehingga kontribusi dapat dikirimkan kembali ke repositori pusat milik neokree, Material Tabs android library, dengan perintah git rebase <nama-branch>.

    git rebase master
    
  10. Sebelum push ke repositori pusat milik neokree, kita akan push ke repository hasil fork di awal pembahasan tadi.

    git push origin sample-project
    
  11. Setelah di push, kita akan melakukan pull request dan membandingkan perubahan yang telah anda lakukan terhadap repo pusat. Anda juga bisa menyisipkan pesan untuk memberitahukan developer pemilik repo pusat tentang apa yang anda lakukan. Setelah yakin terhadap perubahan yang telah anda lakukan, silahkan pilih create pull request dan menunggu tanggapan dari pemilik repo pusat. Lebih lengkapnya bisa anda lihat di tag screenshot.


You might also like...

This repo is a collection of code samples and links to previous twitch live stream sessions. If you have any ideas or suggestions for future episodes, feel free to open an issue.

Talk DEV to me Talk DEV to me is a monthly show on twitch.tv/aws hosted by Tiago Barbosa and Alex Melnyk, where we invite customers, partners, or Amaz

Jan 6, 2023

This project is created to store the name of the book and the name of its author, build with JavaScript.

awesome-books A plain javascript project that can keep track of a list of books utilizing localStorage. See live demo Built With HTML CSS Javascript T

Jul 19, 2022

Most of my pride is here. I put a lot of love into this.

Develop Please use yarn npm i -g yarn for dependencies. Npm is really terrible for CI/CD. To start developing, you need to run two commands simulateno

Sep 4, 2022

The official pokemon website is not that cool? Here is the alternative 😉

The official pokemon website is not that cool? Here is the alternative 😉

Pokemon Awesome Pokemon Data All Pokemon data used in this project comes from PokeAPI GraphQL Beta. Playground: https://beta.pokeapi.co/graphql/consol

Dec 23, 2022

Placebo, a beautiful new language agnostic diagnostics printer! It won't solve your problems, but you will feel better about them.

Placebo, a beautiful new language agnostic diagnostics printer! It won't solve your problems, but you will feel better about them.

Placebo A beautiful new language agnostic diagnostics printer! ┌─[./README.md] │ 1 │ What is Placebo? · ───┬──── ·

Dec 16, 2022

Api for playing around with dummy data. Feel free to use it in your demo projects, tutorials, or testing tasks.

dummy-api Api similar to dummy-api Api for playing around with dummy data. Feel free to use it in your demo projects, tutorials, or testing tasks. All

Jan 7, 2023

Please do not use this tracker to scam anyone! This is free and will be forever free. This tracking will never ask for seed phrases nor private keys. Keep safe!

CryptoBlades Tracker Related modules express - web application framework for node pug - template engine stylus - pre-processor CSS mongoose - nodejs o

Oct 13, 2022

A simple To-do app project made using JavaScript ES6 and Webpack - Microverse. You can add, remove, check tasks, and remove all the tasks that were done at the same time. Feel free to see the live version, if you like it please give it a star!

To Do List a to do list javascript app buit using webpack and es6. Built With HTML CSS JavaScript Wepack Live Demo (if available) Live Demo Link Getti

Dec 17, 2022
Owner
Juan Daniel
Juan Daniel
we try to make a tiny p2p client spec, maybe for sigchain gossip thing, maybe for simple blockchain thing

mininode Mininode is a tiny p2p client for prototyping p2p protocols. It is a specification for a set of interfaces that I made to make it easier to t

Nikolai Mushegian 8 Nov 23, 2022
A browser/Chrome extension that replaces Leftist #trigger words with "bad thing" and "current bad thing". Inspired by Tim Pool.

BadThings browser/Chrome extension replaces Leftist #trigger words with 'bad things' and 'current bad thing'. Quickstart This project uses React 18 an

Cale McCollough 2 Sep 5, 2022
A full-stack application that allows gamers to connect and match to people with similar interests.

Platform that allows gamers to connect and find people with similar interests. Built during the @Rocketseat NLW eSports event. Preview: Quickstart Ser

Lucas 3 Oct 2, 2022
Open! Inclusive! Collaborative! A community for enthusiasts exploring new technologies, working on innovative ideas and helping each other grow together. Open Issues, Raise ideas, Make Pull Requests!

About Us OplnCo previously known as Devstucom represents Open Inclusive Collaborative. We as a community help our fellow students build skills through

OpInCo Community 4 Oct 13, 2022
Clubhouse is a new type of social network based on voice—where people around the world come together to talk, listen and learn from each other in real-time.

Awesome Clubhouse The clubhouse is a new type of social network based on voice—where people around the world come together to talk, listen and learn f

Ehsan Ghaffar 27 Nov 9, 2022
Uncensorable, immutable microblogging platform that is completely decentralized and does not rely on any centralized systems.

Zooko Truly decentralized, immutable and uncensorable microblogging Zooko is a working-example, proof-of-concept proving that you can have a decentral

Publius Federalist 152 Apr 20, 2022
Plain JavaScript version of jQuery's slideToggle(), slideDown(), & slideUp(), but does not use display: none.

dom-slider It works like jQuery's slideToggle(), slideDown(), & slideUp(), but does not use display: none. Uses CSS3 transitions and element.scrollHei

Brenton Cozby 56 Dec 27, 2022
A map for 1337 Khouribga's new labs clusters. This tool will help 1337 students find available posts, and search for other students in the cluster by name or login.

1337KH Labs Clusters Map Hellow. This tool is made by 1337 Khouribga students for 1337 Khouribga students to help make their lives at the school easie

Oussama 18 Aug 8, 2022
A useful list of must-watch talks about JavaScript

Must-Watch JavaScript This is a collection of well-received talks about JavaScript, covering topics such as ES6/ES2015, JavaScript frameworks, client-

Matt Smith 6.8k Jan 4, 2023
It is a simple Math Sprint Game in which the user must agree or disagree with the answers to math problems in the quickest time possible.

MATH-SPRINT-GAME The user must agree or disagree with the results of math equations in this Math Sprint Game. The amount of time the player spends mak

AMEY THAKUR 8 Aug 1, 2022