- Pengenalan git
- Install git
- Command-command di CMD
- Command-command di git
- Pengenalan django
- Install django
- cara kerja django
- cara menggunakan django
git adalah version control system yang digunakan para developer untuk mengembangkan software secara bersama-bersama. Fungsi utama git yaitu mengatur versi dari source code program anda dengan mengasih tanda baris dan code mana yang ditambah atau diganti.
Website: https://git-scm.com/
Apa itu repository?
Apa itu remote?
Apa itu gitlab / github? Apa perbedaannya?
- Download
- Windows 64-bit
- Linux (Ubuntu):
sudo apt install git
- jalankan installer-nya
cd
(change directory) : pindah ke luar atau ke dalam suatu folderdir
(directory?) : menampilkan list isi folder di posisi sekarang.mkdir <folder_name>
(make directory) : membuat folder barudel <file_name>
(delete) : menghapus sebuah filermdir <folder_name>
(remove directory) : menghapus sebuah folder
Command-command git bisa dijalankan lewat git bash (yang baru saja diinstall) atau command prompt (cmd).
Untuk membuat repository pada file lokal yang nantinya ada folder .git
- Buat folder baru, misalkan nama foldernya gabut
mkdir gituan
- Lalu masuk ke foldernya
cd gituan
- Buat repository git baru
git init
Mengatur setting di git
- Masukkan nama
git config --global user.name "Nama Lengkap Kamu"
- Masukkan email
git config --global user.email "email.kamu@yang.dipake"
- Dapat dcek dengan menulis:
Apakahgit config -l
user.name
danuser.email
ada disitu?
Untuk mengetahui status dari repository lokal
- Coba cek status
git status
- Masukkan sebuah file di dalam folder tersebut
- Cek status lagi
git status
- Seharusnya ada file berwarna merah. Artinya ada file berbeda dari keadaan awal.
Menambahkan file baru pada repository yang dipilih.
- Tambahkan file yang berubah untuk dicatat git satu per satu
atau tambahkan semua file yang berubahgit add <nama_file>
git add .
- Coba sekarang cek status
git status
- Seharusnya file-filenya sekarang berwarna hijau. Artinya file sudah di ditandai oleh git.
- File-file yang belum di add, disebut not staged for commit.
- Sedangkan, file-file yang sudah di add, disebut staged for commit.
Untuk menyimpan perubahan yang dilakukan. Seperti mengambil screenshot dari file-file yang saat commit.
- Cek apakah sudah ada file yang staged
git status
- Buat commit baru. Harus memassukan pesan apa yang dicommit (-m)
atau message dapat ditulis di text editorgit commit -m "pesan yang sabeb"
kalau yang terbuka adalah vim,git commit
- pndahhkan kursor dengan arrow key
- tombol
i
untuk menulis - selesai menulis tekan
esc
- seletah
esc
, tekan:wq
danENTER
untuk keluar
Untuk melihat commit-commit yang pernah dilakukan
- Melihat log
git log
- Jika lognya panjang sampai bawah, tekan
q
untuk keluar.
git branch <nama_branch>
: memuat branch baru di repositorygit branch
: melihat seluruh branch yang ada pada repositorygit checkout
: menukar branch yang aktif dengan branchyang dipilihgit merge
: untuk menggabungkan branch yang aktif dan branch yang dipilihgit push
: untuk mengirimkan perubahan file setelah di commit ke remote repository.git clone
: membuat Salinan repository lokal
- Buat folder project (misalkan diberi nama amfm).
Akan muncul folder kosong bernama amfm.
Lalu masuk ke folder baru tersebut.
mkdir amfm cd amfm
- Kemudian membuat virtual environment (biasanya env).
Akan muncul folder baru bernama env.
python -m venv env
- Lalu masuk ke environment yang baru saja dibuat.
env\Scripts\activate.bat
Perlu diperhatikan menggunakan backslash (
\
yang di atasENTER
), bukan slash (/
). - Setelah itu install package-package python yang dibutuhkan dengan pip, seperti django.
Disini akan menginstall django.
pip install django
- Setelah selesai menginstall, kamu akan mencetak apa saja yang diinstall ke file bernama requirements.txt.
Caranya dengan menggunakan pip freeze. Akan muncul file baru bernama requirements.txt.
pip freeze > requirements.txt
- Lalu kamu bisa memulai untuk membuat project django (memakai nama yang sama, yaitu amfm)
hasilnya akan ada file-file seperti ini:django-admin startproject amfm .
├── env │ ├── Scripts │ │ ├── activate.bat │ │ ├── ... │ │ └── ... │ ├── ... │ └── ... ├── manage.py ├── requirements.txt └── amfm ├── __init__.py ├── settings.py ├── urls.py └── wsgi.py
- Mulai dari sekarang, kamu dapat menjalankan server django.
Server dapat dibuka di browser (misalkan Firefox) dengan memasukkan urlpython manage.py runserver
localhost:8000
atau127.0.0.1:8000
. Cara menghentikan servernya dengan menekan CTRL + C.
Ingat command ini, karena akan sering digunakan.
- Inisialisasi repository git
git init
- Membuat config user (kalau tadi belum):
git config --global user.name "Nama Lengkap Kamu" git config --global user.email "email.kamu@yang.dipake"
- Membuat file .gitignore, yang berfungsi menyembunyikan file-file yang tidak diperlukan agar tidak disimpan di git.
Iya, file .gitignore tidak memiliki extension seperti (.txt
atau.exe
).
Buka dan tekanCTRL-S
di link .gitignore ini untuk mendownload filenya. Kemudian dimasukkan ke folder paling luar. Seperti ini:├── env │ ├── ... │ └── ... ├── .gitignore ├── manage.py └── amfm ├── __init__.py ├── **pycache** ├── settings.py ├── urls.py └── wsgi.py
- simpan sebagai commit baru.
git add . git commit -m "text commit sabeb"
- Buat akun Gitlab (Kalau belum punya)
- Buatlah project baru di gitlab. Pastikan projectnya diset agar Public.
- Kemudian klik tombol clone untuk mendapatkan link gitlab yang https.
- Lalu masukkan tulis di terminal link tersebut seperti ini:
git remote add origin https://gitlab.com/username_kamu/amfm.git
- Lalu coba untuk push ke gitlab.
Dia akan meminta username dan password di gitlab. Passwordnya tersembunyi, jadi coba saja diketik.git push -u origin master
- Jika berhasil, kamu bisa liat project django kamu di https://gitlab.com .
- Di django, satu project website dapat memiliki banyak app. Kamu akan membuat app pertama kamu, misalkan diberi nama homepage.
Akan ada folder bernama homepage isinya seperti ini:python manage.py startapp homepage
├── env ├── homepage │ ├── admin.py │ ├── apps.py │ ├── __init__.py │ ├── migrations │ ├── models.py │ ├── tests.py │ └── views.py ├── manage.py └── amfm ├── __init__.py ├── settings.py ├── urls.py └── wsgi.py
- Buka file amfm/settings.py, kemudian tambahkan nama app kamu ke
INSTALLED_APPS
, jadi seperti ini:INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'homepage', ]
- Buatlah folder baru bernama templates di folder homepage.
mkdir homepage\templates
- kemudian masukkan file-file html yang kamu buat dari tugas pertemuan 1 ke folder homepage/templates/.
setelah memasukan file-file html ke folder templates, akan terlihat seperti ini:
├── homepage │ ├── __init__.py │ ├── admin.py │ ├── apps.py │ ├── migrations │ ├── models.py │ ├── tests.py │ ├── templates │ │ ├── index.html │ │ ├── profile.html │ │ ├── ... .html │ │ └── ... .html │ └── views.py
nama file html tidak harus persis sama.
- buka file homepage/views.py kemudian buat fungsi baru di dalamnya, misal diberi nama index(request) .
Ganti
nama_file.html
menjadi file sebenarnya. Formatnya seperti ini:Jika punya lebih dari satu html, buatlah isi homepage/views.py menjadi seperti ini:def index(request): return render(request, 'nama_file.html')
from django.shortcuts import render # Create your views here. def index(request): return render(request, 'index.html') def profile(request): return render(request, 'profile.html') # diteruskan...
Nama fungsinya bebas, tapi perlu diingat nama-namanya.
- Lalu kamu akan mengatur routing url. caranya adalah dengan membuat file baru homepage/urls.py. isinya seperti ini:
Format penulisan pathnya adalah
from django.urls import path from . import views app_name = 'homepage' urlpatterns = [ path('', views.index, name='index'), path('profile/', views.profile, name='profile'), # dilanjutkan ... ]
path('url-yang-diinginkan/', views.nama_fungsi, name='nama_fungsi'),
. Pastikan ada satu url yang string kosong saja (''
) - Kemudian membuat mengubah file amfm/urls.py kamu akan mengimport include dan menambahkan
urlpatterns
baru:Karena dia meng-includefrom django.urls import path, include from django.contrib import admin urlpatterns = [ path('admin/', admin.site.urls), path('', include('homepage.urls')), ]
'homepage.urls'
Django akan mencari file homepage/urls.py. - Sekarang coba dijalankan server djangonya.
Server dapat dibuka di browser dengan memasukkan urlpython manage.py runserver
localhost:8000
. Apakah bisa berjalan?
Apakah styling atau gambar sudah muncul? Sepertinya belum, tapi tidak apa-apa, karena memang belum selesai Wkwkwk. - Sekarang kamu akan memasukkan semua stylesheet (*.css) dan semua gambar (*.jpg, *.png, *.svg, dst.) ke project Django kamu.
Kamu buat folder baru homepage/static/
mkdir homepage\static\
- File-file stylesheet dan gambar kamu masukkan ke folder homepage/static/.
Sehingga struktur filenya kira-kira seperti ini:
├── homepage │ ├── ... │ ├── ... │ ├── static │ │ ├── style.css │ │ ├── ... .css │ │ ├── photo.jpg │ │ ├── ... .png │ │ └── ... .svg │ ├── ... │ └── ...
- Lalu kamu harus membuka semua file html yang menggunakan css dan gambar untuk menyesuaikan dengan penulisan Django.
Format dari django menggunakan static, jadi harus menambahkan
{% load static %}
di semua file yang menggunakan resource dari folder static/ pada bagian paling atas. Contohnya seperti ini:<!DOCTYPE html> {% load static %} <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> ... </head> ... </html>
- Ubah semua baris html yang menggunakan css atau gambar:
- CSS:
Awalnya:menjadi:<link rel="stylesheet" href="nama_file.css">
<link rel="stylesheet" href="{% static 'nama_file.css' %}">
- Gambar:
Awalnya:menjadi:<img src="nama_gambar.jpg">
<img src="{% static 'nama_gambar.jpg' %}">
Kalau menggunakan inline style, nggak perlu diapa-apain.
- CSS:
- Url-url juga perlu diubah.
Awalnya:menjadi:<a href="index.html">...</a> <a href="profile.html">...</a>
<a href="{% url 'homepage:index' %}">...</a> <a href="{% url 'homepage:profile' %}">...</a>
homepage
adalah app_name dari homepage/urls.py, sedangkanindex
danprofil
adalah name dari path-path yang ada diurlpatterns
. - Kalau kamu mencantumkan memasukkan gambar di file.css, misalkan
Awalnya:Kamu harus menambahkanbackground-image: url('gambar_background.jpg');
/static/
menjadi:Django secara default memasukkan file-file static ke path urlbackground-image: url('/static/gambar_background.jpg');
/static/
. Bergantung pada variableSTATIC_ROOT
di amfm/settings.py. - Jalankan server django, dan buka url
localhost:8000
di browser.Apakah sekarang styling atau gambar sudah muncul? Seharusnya sudah.python manage.py runserver
- Jangan lupa
git commit
setelah website berjalan.