Browse Source
Agent-ready commands and checklists for sync with rbsetiawan/LDAPWeb. Co-authored-by: Cursor <cursoragent@cursor.com>master
2 changed files with 358 additions and 0 deletions
@ -0,0 +1,189 @@
@@ -0,0 +1,189 @@
|
||||
# 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) |
||||
@ -0,0 +1,169 @@
@@ -0,0 +1,169 @@
|
||||
# Push ke Git — LDAPWeb Monorepo |
||||
|
||||
> Panduan push ke [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 di-ignore (tidak ikut push) |
||||
|
||||
- `ops/` |
||||
- `support/` |
||||
- `support-api/` |
||||
- `LDAPWeb.code-workspace` |
||||
- `.env` (kecuali `*.env.example`) |
||||
- `node_modules/`, `.venv/`, `GeoNetAgent/agent/config.json` |
||||
|
||||
`support/` dan `support-api/` punya repo Git terpisah di akun lain — jangan di-push dari monorepo ini. |
||||
|
||||
--- |
||||
|
||||
## Perintah langsung ke Agent |
||||
|
||||
Salin blok di bawah ke chat Cursor bila ingin Agent melakukan push: |
||||
|
||||
``` |
||||
Push perubahan ke git.gisportal.id (rbsetiawan/LDAPWeb). |
||||
Ikuti push.md: cek status, pastikan tidak ada .env/secret, commit dengan pesan jelas, lalu push origin master. |
||||
Jangan push folder yang di-ignore (.gitignore). |
||||
``` |
||||
|
||||
### Variasi perintah |
||||
|
||||
| Tujuan | Perintah ke Agent | |
||||
|--------|-------------------| |
||||
| Push semua perubahan | `Commit dan push semua perubahan ke origin master sesuai push.md` | |
||||
| Push satu folder | `Commit dan push hanya perubahan di GeoNetAgent/ ke origin master` | |
||||
| Push setelah sync docs | `Update dokumentasi .cursor lalu commit & push sesuai push.md` | |
||||
| Cek sebelum push | `Jalankan pre-push checklist di push.md, laporkan hasil tanpa push` | |
||||
|
||||
--- |
||||
|
||||
## Perintah manual (PowerShell) |
||||
|
||||
### 1. Masuk ke root proyek |
||||
|
||||
```powershell |
||||
cd "D:\Project\app on git" |
||||
``` |
||||
|
||||
### 2. Cek perubahan |
||||
|
||||
```powershell |
||||
git status |
||||
git diff |
||||
git diff --staged |
||||
``` |
||||
|
||||
### 3. Stage file |
||||
|
||||
```powershell |
||||
# Semua perubahan (hormati .gitignore) |
||||
git add . |
||||
|
||||
# Atau per folder |
||||
git add GeoNetAgent/ |
||||
git add LDAPWeb/ |
||||
git add server-audit/ |
||||
git add server-connection/ |
||||
``` |
||||
|
||||
### 4. Commit |
||||
|
||||
```powershell |
||||
git commit -m "feat(GeoNetAgent): deskripsi singkat perubahan" |
||||
``` |
||||
|
||||
Contoh pesan commit: |
||||
|
||||
```powershell |
||||
git commit -m "docs: sinkronkan .cursor setelah sesi pengembangan" |
||||
git commit -m "fix(LDAPWeb): perbaiki validasi login LDAP" |
||||
git commit -m "chore: update nginx config collector" |
||||
``` |
||||
|
||||
### 5. Push |
||||
|
||||
```powershell |
||||
git push origin master |
||||
``` |
||||
|
||||
Atau (jika upstream sudah di-set): |
||||
|
||||
```powershell |
||||
git push |
||||
``` |
||||
|
||||
### 6. Verifikasi |
||||
|
||||
```powershell |
||||
git status |
||||
git log -1 --oneline |
||||
``` |
||||
|
||||
--- |
||||
|
||||
## Checklist Agent sebelum push |
||||
|
||||
Agent **wajib** memeriksa ini sebelum `git commit` / `git push`: |
||||
|
||||
1. **Tidak ada secret** — pastikan `.env`, password, token, atau kredensial tidak ter-stage. |
||||
2. **Hormati `.gitignore`** — jangan paksa-add `ops/`, `support/`, `support-api/`. |
||||
3. **Dokumentasi** — jika ada perubahan arsitektur/desain, update `.cursor/*.md` atau ADR dulu (lihat `GeoNetAgent/perintah.md`). |
||||
4. **Pesan commit** — jelas, menyebut area (`GeoNetAgent`, `LDAPWeb`, dll.) dan alasan singkat. |
||||
5. **Branch** — push ke `master` kecuali user minta branch lain. |
||||
6. **Jangan** `git push --force` ke `master` tanpa persetujuan eksplisit user. |
||||
|
||||
--- |
||||
|
||||
## Troubleshooting |
||||
|
||||
### Autentikasi gagal |
||||
|
||||
```powershell |
||||
git remote -v |
||||
git push origin master |
||||
``` |
||||
|
||||
Credential Windows Credential Manager: host `git.gisportal.id`, user `rbsetiawan`. |
||||
|
||||
### Remote belum ada |
||||
|
||||
```powershell |
||||
git remote add origin https://git.gisportal.id/rbsetiawan/LDAPWeb.git |
||||
git push -u origin master |
||||
``` |
||||
|
||||
### Push ditolak (behind remote) |
||||
|
||||
```powershell |
||||
git pull origin master |
||||
# selesaikan konflik jika ada, lalu: |
||||
git push origin master |
||||
``` |
||||
|
||||
Lihat juga: [pull.md](pull.md) |
||||
|
||||
### File besar / push lambat |
||||
|
||||
`server-connection/databaselist/vendor/` ikut repo — hindari commit ulang vendor tanpa perlu. |
||||
|
||||
--- |
||||
|
||||
## Alur singkat (Agent) |
||||
|
||||
```mermaid |
||||
flowchart LR |
||||
A[git status] --> B{Ada secret?} |
||||
B -->|Ya| C[Stop — perbaiki .gitignore] |
||||
B -->|Tidak| D[git add] |
||||
D --> E[git commit] |
||||
E --> F[git push origin master] |
||||
F --> G[git status — up to date] |
||||
``` |
||||
Loading…
Reference in new issue