Gogs: Repositori/pencarian pengguna (Kode dan Masalah)

Dibuat pada 10 Mar 2014  ·  82Komentar  ·  Sumber: gogs/gogs

  • [x] Repositori
  • [x] Pengguna
  • [ ] Isu
  • [ ] Kode
⛔ do not send pull request 🎯 feature

Komentar yang paling membantu

Sekarang dimungkinkan untuk mencari repositori dan pengguna berdasarkan nama di cabang develop , baik di halaman explore maupun halaman panel admin.

Semua 82 komentar

Idealnya melalui sphinx atau sejenisnya.

Pencarian kode - https://code.google.com/p/codesearch/ - sudah diterapkan di Go dan dapat berfungsi sebagai dasar untuk pengembangan lebih lanjut dan prototipe cepat. Saat ini ia menggunakan indeksnya sendiri dan karena itu tidak bergantung pada layanan eksternal, tetapi dapat diperluas dengan API plugin sederhana untuk menambahkan ElasticSearch, Sphinx, dll.

Kedengarannya bagus! @rojaro @Unknwon

@lifeofguenter @rojaro Terima kasih atas info Anda. Saya perlu waktu untuk mempelajarinya.

git grep mungkin membuat Anda cukup jauh untuk pencarian kode setidaknya, tetapi Pencarian masalah akan membutuhkan sesuatu yang lebih.

Proyek ini: https://github.com/etsy/Hound (berbasis dalam pencarian kode) sudah memiliki pengindeksan repositori dan ujung depan web.

Ketika saya mengujinya, gagal mengindeks file sumber yang dikodekan di Windows Ansi. Jika Anda menambahkan fitur ini ke gogs, pastikan untuk juga mendukung penyandian non-utf8.

@CarlosGtrz terima kasih atas tipnya!

+1 - Ini akan luar biasa.

+1

+1

+1!

@Unknwon ada rencana untuk memasukkan sesuatu seperti ini?

+1

+1

+1

+1

+1 untuk pencarian kode https://github.com/etsy/hound

Saya rindu tidak bisa mencari masalah paling banyak untuk kata kunci! +1 yang besar

Sekedar catatan: https://github.com/etsy/hound

Itu terlihat menjanjikan

Tampaknya https://github.com/etsy/hound cukup baik.

+1

Tolong, hentikan kegilaan +1. Anda membuat kebisingan untuk semua orang yang berlangganan utas ini.

@dgallow mungkin Anda harus berhenti berlangganan dari masalah ini. Itulah satu-satunya cara bagi komunitas untuk menunjukkan betapa pentingnya suatu fitur sampai github memperkenalkan cara lain untuk itu.

+1 @tboerger :blush: dan +1 untuk fitur ini :+1:

+1

+2

+1

+1

+:100:

+1

Masalah sebelumnya

Apakah ada yang mengerjakan ini? Saya tidak punya banyak pengalaman dengan Go, tapi saya ingin menyelam dan melihat seberapa jauh saya bisa.

@tomas itu sangat besar sangat besar ... Tidak merekomendasikan .. coba beberapa yang lain berlabel help wanted .

Haha, apakah itu? Maka itu harus menyenangkan. :)

Menerapkan sesuatu itu mudah, menerapkan dan mengikuti konvensi itu sulit... yang berarti peninjauan kode itu ketat.

Mungkin permintaan fitur ini harus dibagi menjadi 4 yang berbeda:

  • Pencarian repositori
  • Pencarian pengguna
  • Pencarian masalah
  • Pencarian kode

Bahkan jika mereka berbagi kata "pencarian", itu adalah masalah yang berbeda. Mereka tidak perlu berbagi apa pun. Jika mereka dapat membagikan sesuatu (UI atau kode), itu akan bagus tetapi bukan keharusan.

Saya sedang mencari cara untuk meningkatkan pencarian masalah dan saya pikir menyatukan keempatnya terlalu ambisius.

Pekerjaan apa yang bisa saya lakukan dalam hal ini? Saya bekerja dengan garpu Gogs kami penuh waktu untuk pekerjaan saya, jadi dalam arti tertentu dibayar untuk membuat ini lebih baik. Saya tahu seperti yang dikatakan di atas ini adalah tugas besar, tetapi saya telah membuat banyak mesin pencari dan menampilkan hasil dalam kisi dan daftar. Ini adalah salah satu masalah kami, seperti yang Anda lihat dari referensi yang saya buat.

@richmahn apakah kalian punya saluran IM yang bisa saya ikuti...?

@Unknwon Kami menggunakan Slack untuk komunikasi pengembangan Word kami yang sedang berlangsung. Itu dapat bergabung di http://door43.org/en/slack. Anda dapat menemukan saya di sana sebagai @rich. Namun jika ada cara lain Anda ingin mengobrol, beri tahu saya.

Sekarang dimungkinkan untuk mencari repositori dan pengguna berdasarkan nama di cabang develop , baik di halaman explore maupun halaman panel admin.

Wow, ini awal yang bagus untuk membawa gogs ke "tingkat selanjutnya"! Selamat @Unknwon dan @richmahn

Ini bagus! Terima kasih kawan!

@ChangePlaces Saya tidak melakukan apa-apa, selain mendorongnya (saya suka berpikir ada beberapa cambuk yang retak, tetapi dia sudah selesai bahkan sebelum saya sempat bertanya apakah dia punya kesempatan untuk mengerjakannya hari ini, lol), heh. Dan saya mengujinya dengan postgres.

Pencarian di panel admin hanya menampilkan repo publik. Apakah ini dimaksudkan?

Oh, sebenarnya, mungkin perlu ditunjukkan bahwa SQLite memiliki masalah dengan dukungan teks lengkap. Jika saya ingat dengan benar, diperlukan tabel terpisah untuk kolom terindeks teks lengkap.

@cmtec poin bagus! Baru saja mendorong perbaikan ke develop .

@ChangePlaces ada petunjuk?

@Unknwon Perincian yang sangat sederhana - http://blog.xojo.com/2014/03/14/full_text_search_with_sqlite/

Ada juga detail tentang FTS5 - modul pencarian teks lengkap 5, modul SQLite untuk pencarian teks lengkap. Saya tidak yakin apakah itu dikompilasi secara default, tapi sepertinya saya ingat itu.

https://www.sqlite.org/fts5.html

Saya ingat harus sepenuhnya merestrukturisasi tabel SQLite saya untuk memperhitungkan pencarian teks lengkap, jika tidak, Anda menduplikasi data ke tabel lain. Ini mungkin / mungkin tidak dapat diterima untuk pencarian di sini.

@ChangePlaces terima kasih! Apakah pencarian tidak berfungsi di SQLite3 sekarang?

@Unknwon maksud Anda jika pencarian berfungsi di gogs dengan sqlite? saya tidak yakin, saya tidak menggunakan SQLite dengannya, tetapi hanya ingin menunjukkannya!

Terima kasih telah memperbaiki masalah "hanya repo publik yang muncul dalam pencarian" @Unknwon !

Saya kemarin melompat ke dalam ini dan mendapatkan implementasi pencarian kode yang mentah tetapi berfungsi melalui git grep . Ini adalah solusi peretasan tetapi berhasil, meskipun hasil pencarian tidak langsung (membutuhkan sekitar 4 detik untuk mencari melalui ~ 100 repo saya pada VPS kecil).

Ini adalah apa yang terlihat seperti:

screenshot 2016-06-25 at 10 52 47 am

Jika ada yang tertarik, saya dapat meletakkan kode saya di fork. Tetapi berhati-hatilah bahwa ini bukan solusi ideal dan juga penyelaman pertama saya ke Go. :)

git grep dapat menurunkan kinerja disk i/o ( nice + ionice )

Pengindeks kode

Lebih baik git grep :

@denji Ya, menggunakan pengindeks seperti Hound akan menjadi solusi ideal. Milik saya hanya sementara sampai seseorang yang lebih baik di Go mencobanya. Syukurlah itu berhasil. :)

@tomas dapatkah Anda menjelaskan bagaimana Anda menerapkan pencarian git grep? Bisakah Anda membuat garpu?

@ericbsdr Tentu, saya harus membersihkan beberapa hal terlebih dahulu. Saya menulis skrip shell sederhana yang berjalan melalui jalur root repo dan menjalankan git grep di setiap repo dan mengembalikan hasil tersebut. Lalu saya mengurai hasil itu dan merendernya di template. Jelas bukan ilmu roket. :)

Terima kasih @tomas . Saya bukan pengembang besar tetapi saya akan mencoba memahami bagaimana Anda membuatnya bekerja.

+1

Kami membutuhkan masalah pencarian

Saya berasal dari latar belakang Java dan telah melakukan banyak pekerjaan dengan Lucene, yang sangat cepat. Apakah ada Lucene versi Go? Saya benar-benar perlu masuk ke Go karena kedengarannya cukup rapi.

Itu akan menjadi bleve yang luar biasa.

Pada 13 Des 2016 18:47, "Darren Bell" [email protected] menulis:

Saya berasal dari latar belakang Java dan telah melakukan banyak pekerjaan dengan Lucene,
yang luar biasa cepat. Apakah ada Lucene versi Go? Saya benar-benar perlu
masuk ke Go karena kedengarannya cukup rapi.


Anda menerima ini karena Anda berkomentar.
Balas email ini secara langsung, lihat di GitHub
https://github.com/gogits/gogs/issues/13#issuecomment-266908876 , atau bisukan
benang
https://github.com/notifications/unsubscribe-auth/ABRNNRE7MgRKqFxL0fbXT_r0u3yN7Jz7ks5rHzy0gaJpZM4BoKca
.

tolong tambahkan pencarian ke kode, pencarian repo dan nama pengguna bagus, tetapi tidak cukup ...

+1

Apa sebenarnya yang menjadi batu sandungan dengan masalah ini? Mungkin masyarakat bisa membantu

Tidak ada fungsi bawaan untuk mencari pola string di Gogs. Anda dapat mencari di dalam repo atau pengguna tetapi tidak di dalam kode seperti yang dapat dilakukan GitLab.

IMO itu adalah fitur HARUS MEMILIKI untuk alat semacam ini.

Salah satu caranya adalah dengan mengimplementasikan etsy/hound di dalam Gogs atau CodeSearch dari Google.

Saya mencoba menggunakan etsy/hound di luar Gogs dengan dua wadah buruh pelabuhan tetapi saya sedang berurusan dengan masalah Kunci SSH saat ini dan itu tidak terlalu ramah pengguna.

etsy/hound menggunakan Go, itu bisa lebih mudah daripada mengimplementasikan CodeSearch IMO.

FYI, inilah masalah yang sesuai di gitea:

https://github.com/go-gitea/gitea/issues/1102

yang saya asumsikan akan memiliki peluang lebih baik untuk diselesaikan, daripada di gogs.

jika Anda ingin menggunakan hound/gogs cukup pasang kunci pribadi Anda ketika Anda menjalankan wadah hound dan tautkan cotainer gogs Anda ke sana maka Anda dapat menggunakan ssh-keyscan untuk menambahkan wadah gogs Anda ke file known_hosts di wadah hound

docker exec houndcontainer sh -c 'ssh-keyscan -t rsa -p 2222 gogscontainer > /root/.ssh/known_hosts'

Jangan lupa pencarian global: cari repositori dan nama pengguna. Saya mendapat 60+ repo dan menanganinya sangat merepotkan…

@mwaeckerlin Saya tidak mengerti, bukankah halaman jelajah sudah bisa melakukan ini? https://try.gogs.io/explore/repos

@Salah saya, saya harus minta maaf, saya tidak melihatnya. Entah saya buta atau itu lagi proxy? Pokoknya, ya, itu saja!

Poin lainnya (tidak terkait) adalah: Penataan proyek akan menyenangkan. Apa yang saya lakukan untuk mengatasinya adalah dengan menggunakan organisasi, satu untuk gambar buruh pelabuhan, skrip admin, nodejs-libs dan c++-libs. Beberapa jenis hubungan antara proyek akan menyenangkan, seperti orang tua-/ anak-/ sub-proyek.

Ini membingungkan: https://mrw.sh/explore/repos
Jadi ini sedikit lebih baik: https://mrw.sh/explore/organizations

Ada ide lain?

@mwaeckerlin mungkin ini yang Anda cari https://github.com/gogits/gogs/issues/1253.

Sekarang saya melihat masalah saya sebelumnya: Bilah pencarian hanya terlihat di tampilan repo. Saya menyarankan untuk menambahkan bilah pencarian global di baris header atas, yang dapat diakses dari mana saja. (Mirip dengan yang ada di GitHub.)

Dengan fungsionalitas pencarian kode/masalah yang mudah digunakan, Gogs dapat menjadi basis pengetahuan/kamus internal.

Pengembang akan lebih sering menggunakan Gogs daripada sekadar pelacakan bug dan sistem kontrol sumber.

+1 ini akan sangat luar biasa. Saya pikir ini adalah "fitur yang harus dimiliki"

@tomas apakah Anda membuat garpu dengan versi string pencarian Anda?

@giudon Saya tidak melakukannya karena saya memiliki sedikit waktu ATM, dan kemudian ketika Gitea lahir, saya pikir seseorang akan dapat menerapkan "cara yang benar" ini (seperti yang disarankan oleh @denji).

Jika masih ada minat, saya bisa mendorongnya ke suatu tempat. :)

Sunting: Sepertinya Gitea melakukannya menggunakan Bleve.

Ya @tomas , saya dapat mengonfirmasi bahwa itu sudah diterapkan di Gitea, tetapi hanya di cabang master (sebenarnya sedang dalam pengujian). ASAIK Ini akan dirilis secara resmi dari beberapa minggu. Terima kasih!

Tentu, tidak masalah @giudon.

Saya baru saja mendorong trik kecil saya yang kotor jika ada yang tertarik.

@ChangePlaces Pikiran saya adalah sama beberapa bulan yang lalu...tapi sekarang...setelah saya mencoba beberapa alat SCM (gogs, gitea, gitlab, gitbucket), saya dapat mengkonfirmasi pada diri sendiri bahwa meskipun gogs itu lebih "stabil", gitea memenuhi semua kebutuhan saya (cepat, dikembangkan terus-menerus, memiliki komunitas yang aktif ...). Saya sedih tentang ini, karena gogs adalah pilihan pertama saya, tetapi saya tidak punya waktu untuk menunggu, saya membutuhkan alat yang bagus dan "dalam pengembangan" sekarang

Apakah ada berita tentang ini? Apakah ini tidak direncanakan, direncanakan, sedang berlangsung atau mungkin sudah dalam pengujian?

Saya merasa ini adalah fitur penting dan saya tidak ingin memahami semua repositori yang dikloning.
Kami menggunakan Gogs sebagai versi yang dihosting secara lokal, tetapi juga sebagai basis pengetahuan.

Ini telah menjadi masalah selama beberapa tahun dan saya tidak melihat perkembangan.

@BreakfastSerial Hai, ini masih dalam tahap rencana. :ngantuk:

ripgrep , adalah alat pencarian yang sangat cepat, yang mendukung aturan .gitignore dan file konfigurasi . Ini mungkin membantu.

@0maxxam0 telah mendanai $10.00 untuk masalah ini.


Kemungkinan besar fitur pencarian kode akan didukung sebagai integrasi asli ke Sourcegraph API, dan menggunakan Sourcegraph untuk mencari kode.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

rugk picture rugk  ·  3Komentar

Cysioland picture Cysioland  ·  3Komentar

ceeji picture ceeji  ·  3Komentar

zoh48gz04 picture zoh48gz04  ·  3Komentar

ozzi- picture ozzi-  ·  3Komentar