# Pull dari Git — LDAPWeb Monorepo > Panduan pull dari [git.gisportal.id](https://git.gisportal.id/) · akun **rbsetiawan** · repo **LDAPWeb** ## Info repository | Item | Nilai | |------|-------| | Remote | `https://git.gisportal.id/rbsetiawan/LDAPWeb.git` | | Branch default | `master` | | Root lokal | `D:\Project\app on git` | | Web | https://git.gisportal.id/rbsetiawan/LDAPWeb | ### Folder lokal tidak dari repo ini Folder berikut **tidak** di-track monorepo LDAPWeb (tetap ada di disk, di-ignore): - `ops/` - `support/` → repo terpisah: `http://git.gisportal.id/rfahreza/support.git` - `support-api/` → repo terpisah: `http://git.gisportal.id/rfahreza/support-api.git` Pull monorepo **tidak** mengupdate `support/` atau `support-api/`. Gunakan pull terpisah di folder masing-masing bila perlu. --- ## Perintah langsung ke Agent Salin blok di bawah ke chat Cursor bila ingin Agent melakukan pull: ``` Pull terbaru dari git.gisportal.id (rbsetiawan/LDAPWeb). Ikuti pull.md: cek status lokal, backup/stash jika ada perubahan belum commit, pull origin master, laporkan file yang berubah. Jangan overwrite .env lokal tanpa konfirmasi. ``` ### Variasi perintah | Tujuan | Perintah ke Agent | |--------|-------------------| | Pull standar | `Pull origin master sesuai pull.md` | | Pull aman | `Stash perubahan lokal, pull, lalu pop stash sesuai pull.md` | | Sync perangkat baru | `Clone atau pull LDAPWeb monorepo, jelaskan folder yang di-ignore` | | Cek saja | `Fetch dan bandingkan lokal vs remote tanpa merge — laporkan perbedaan` | | Pull support terpisah | `Pull support-api di folder support-api/ dari remote rfahreza` | --- ## Perintah manual (PowerShell) ### 1. Masuk ke root proyek ```powershell cd "D:\Project\app on git" ``` ### 2. Cek kondisi lokal ```powershell git status git remote -v git fetch origin git log HEAD..origin/master --oneline ``` ### 3. Pull (working tree bersih) ```powershell git pull origin master ``` ### 4. Pull aman (ada perubahan lokal) ```powershell git stash push -m "wip sebelum pull" git pull origin master git stash pop ``` Jika `stash pop` konflik, selesaikan file konflik lalu: ```powershell git add . # jangan commit otomatis kecuali user minta ``` ### 5. Verifikasi ```powershell git status git log -3 --oneline ``` --- ## Clone perangkat baru ```powershell git clone https://git.gisportal.id/rbsetiawan/LDAPWeb.git "D:\Project\app on git" cd "D:\Project\app on git" ``` Setelah clone: 1. Salin `.env` dari backup atau buat dari `*.env.example` — file `.env` tidak ada di repo. 2. Folder `ops/`, `support/`, `support-api/` perlu disiapkan terpisah jika dipakai. 3. `GeoNetAgent/agent/config.json` — salin dari `config.example.json` atau `config.share.json`. --- ## Pull sub-proyek terpisah (opsional) ### support ```powershell cd "D:\Project\app on git\support" git pull origin master ``` ### support-api ```powershell cd "D:\Project\app on git\support-api" git pull origin master ``` --- ## Checklist Agent setelah pull 1. **Laporkan** commit baru yang masuk (`git log` sebelum/sesudah). 2. **Jangan hapus** `.env` lokal — pull tidak menimpa file yang di-ignore kecuali user sudah commit `.env` (seharusnya tidak). 3. **Cek konflik** — jika ada, bantu selesaikan atau minta keputusan user. 4. **Baca ulang** `.cursor/*.md` jika berubah — itu sumber konteks AI di perangkat ini. 5. **Jangan** `git pull --rebase` atau `reset --hard` tanpa persetujuan user. --- ## Troubleshooting ### `Your local changes would be overwritten` ```powershell git stash git pull origin master git stash pop ``` ### `fatal: not a git repository` ```powershell cd "D:\Project\app on git" git init git remote add origin https://git.gisportal.id/rbsetiawan/LDAPWeb.git git fetch origin git checkout -b master origin/master ``` ### Diverged branches ```powershell git fetch origin git log --oneline --graph --all -10 ``` Laporkan ke user — jangan force-push/pull tanpa instruksi. ### Ingin hanya lihat perubahan remote ```powershell git fetch origin git diff master origin/master ``` --- ## Alur singkat (Agent) ```mermaid flowchart LR A[git status] --> B{Perubahan lokal?} B -->|Ya| C[stash atau minta commit] B -->|Tidak| D[git pull origin master] C --> D D --> E{Konflik?} E -->|Ya| F[Selesaikan / laporkan] E -->|Tidak| G[Laporkan commit baru] ``` Lihat juga: [push.md](push.md)