Skip to content
| Marketplace
Sign in
Visual Studio Code>SCM Providers>Real-Time Conflict Predictor (Beta)New to Visual Studio Code? Get it now.
Real-Time Conflict Predictor (Beta)

Real-Time Conflict Predictor (Beta)

Preview

Muhammed Erdinç

| (0) | Free
[BETA] VS Code extension for proactive merge conflict detection. Detects potential conflicts with GitHub integration. This is a beta version - use with caution.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Real-Time Conflict Predictor (Beta)

⚠️ BETA UYARISI: Bu extension beta aşamasındadır. Üretim ortamında kullanmadan önce kapsamlı testler yapmanız önerilir.

VS Code extension'ı olarak geliştirilmiş proaktif merge conflict tespit aracı.

🎯 Amaç

Developer'lar bir branch üzerinde çalışırken aynı dosyada master veya diğer branch'lerde yapılan değişikliklerden kaynaklanabilecek potansiyel merge conflictlerini önceden tespit etmek. Böylece zaman kaybı ve merge sırasında oluşacak hatalar azaltılır.

✨ Özellikler

📊 Dosya Bazlı Conflict Tahmini

  • Açık dosyada master branch değişikliklerini kontrol eder
  • GitHub'daki open PR'larda aynı dosyada yapılan değişiklikleri analiz eder
  • Satır bazlı çakışma riski hesaplaması yapar
  • Risk seviyesi: Yüksek (Kırmızı) / Orta (Sarı) / Düşük (Yeşil)

🎨 Görsel Uyarı Sistemi

  • Status Bar: Anlık risk skoru görüntüleme
  • Tree View Panel: Detaylı risk analizi ve öneriler
  • Popup Uyarılar: Yüksek risk durumunda otomatik bildirim

⚡ Otomatik Analiz

  • Dosya açıldığında otomatik kontrol
  • Dosya kaydedildiğinde güncelleme
  • Aktif editör değişiminde anlık analiz

🔧 GitHub Entegrasyonu

  • Personal Access Token ile GitHub API bağlantısı
  • Open PR'ları tarama
  • Repository bilgilerini otomatik tespit

🚀 Kurulum

Extension Geliştirme Ortamı

  1. Bağımlılıkları yükle:

    npm install
    
  2. TypeScript derle:

    npm run compile
    
  3. Extension'ı test et:

    • VS Code'da F5 tuşuna bas
    • Yeni VS Code penceresi açılacak
    • Extension Development Host ortamında test et

Konfigürasyon

VS Code ayarlarından (Ctrl/Cmd + ,) şunları yapılandırabilirsiniz:

{
  "conflictPredictor.githubToken": "ghp_your_token_here",
  "conflictPredictor.enableGithubIntegration": true,
  "conflictPredictor.autoCheckOnOpen": true
}

📖 Kullanım

1. Temel Kullanım

  • Herhangi bir dosyayı açın
  • Status bar'da conflict risk durumunu görün
  • Yüksek risk durumunda uyarı alın

2. Detaylı Analiz

  • Explorer panelinde "Conflict Risks" bölümünü açın
  • Risk kategorilerine göre dosyaları görüntüleyin
  • Her dosya için detaylı sebep ve öneriler

3. Manuel Kontrol

  • Command Palette (Ctrl/Cmd + Shift + P)
  • "Conflict Risk Kontrol Et" komutunu çalıştır

🔍 Risk Değerlendirme Algoritması

Git Analizi

  • Uncommitted changes: Yerel değişiklikler tespit edilir
  • Master'daki değişiklikler: Remote master branch'deki değişiklikler
  • Çakışan satırlar: Aynı satırlarda değişiklik tespit edilir
  • Master branch'de çalışma: Doğrudan master üzerinde çalışma riski

GitHub Analizi

  • Open Pull Requests: Aynı dosyada PR'lar tespit edilir
  • Remote Branches: Aktif remote branch'ler kontrol edilir
  • Risk Seviyeleri: Yüksek/orta/düşük risk değerlendirmesi

Risk Seviyeleri

  • Conflict Risk: 🔴 Kırmızı - Dikkatli merge gerekli
  • Safe: 🟢 Yeşil - Güvenli

🛠 Geliştirme

Proje Yapısı

src/
├── extension.ts           # Ana extension dosyası
├── conflictPredictor.ts   # Risk analiz motoru
├── gitAnalyzer.ts         # Git diff analizi
├── githubAnalyzer.ts      # GitHub API entegrasyonu
├── statusBarManager.ts    # Status bar yönetimi
└── conflictTreeProvider.ts # Tree view provider

demo/
├── example.js             # JavaScript test dosyası
└── example.vue            # Vue.js test dosyası

Ana Sınıflar

ConflictPredictor: Ana analiz motoru

  • Git ve GitHub analizlerini birleştirir
  • Risk seviyesini belirler
  • Öneriler üretir

GitAnalyzer: Git repository analizi

  • Diff hesaplama
  • Satır bazlı çakışma tespiti
  • Branch karşılaştırması

GithubAnalyzer: GitHub entegrasyonu

  • Open PR taraması
  • PR diff analizi
  • Repository bilgisi alma

📊 Demo Senaryoları

Test Dosyaları

  • demo/example.js: JavaScript kodu
  • demo/example.vue: Vue.js komponenti

Test Adımları

  1. Demo dosyalarını aç
  2. Değişiklik yap ama commit etme
  3. Status bar'da risk skorunu gözlemle
  4. Tree view'da detayları incele

🔧 API Referansı

ConflictRisk Interface

interface ConflictRisk {
  fileName: string;
  filePath: string;
  riskLevel: "low" | "medium" | "high";
  riskScore: number;
  reasons: string[];
  conflictLines: number[];
  recommendations: string[];
}

Commands

  • conflictPredictor.checkCurrentFile: Manuel analiz
  • conflictPredictor.showConflictPanel: Panel aç

🚧 Beta Sürümü Hakkında

Bu beta versiyonunda:

  • ✅ Temel conflict detection algoritması
  • ✅ GitHub API entegrasyonu
  • ✅ Status bar ve tree view entegrasyonu
  • ⚠️ Henüz tam olarak test edilmemiş edge case'ler olabilir
  • ⚠️ Performans optimizasyonları devam ediyor

Gelecek Özellikler (Stable Release):

  • [ ] Takım üyeleri için real-time uyarılar
  • [ ] Visual diff görüntüleme
  • [ ] Custom branch karşılaştırması
  • [ ] Slack/Teams entegrasyonu
  • [ ] Daha gelişmiş conflict detection algoritmaları

🤝 Katkıda Bulunma

  1. Fork'layın
  2. Feature branch oluşturun (git checkout -b feature/amazing-feature)
  3. Değişikliklerinizi commit edin (git commit -m 'Add amazing feature')
  4. Branch'i push'layın (git push origin feature/amazing-feature)
  5. Pull Request açın

📝 Lisans

Bu proje MIT lisansı altında lisanslanmıştır.

👥 Takım

Real-Time Conflict Predictor projesi hackathon için geliştirilmiştir.


Not: Bu extension'ı üretim ortamında kullanmadan önce kapsamlı testler yapmanız önerilir.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft