يعد خادم searchcode محرك بحث قويًا عن التعليمات البرمجية مع واجهة مستخدم ويب أنيقة.
يعمل خادم Searchcode جنبًا إلى جنب مع نظام التحكم بالمصدر الخاص بك، حيث يقوم بفهرسة الآلاف من المستودعات والملفات مما يسمح لك ولمطوريك بالعثور بسرعة على التعليمات البرمجية وإعادة استخدامها عبر الفرق.
راجع https://searchcodeserver.com/ لمزيد من التفاصيل أو http://demo.searchcodeserver.com/ للحصول على عرض توضيحي مباشر يقوم بفهرسة مشاريع متعددة باستخدام GIT وSVN.
إذا كنت تقوم بالإنشاء من المصدر، فلن تحصل على أي دعم ويجب أن تعمل ضمن القيود المحددة في ترخيص المصدر العادل (راجع LICENSE.txt للحصول على التفاصيل). لشراء الدعم، راجع https://searchcodeserver.com/pricing.html
إذا كنت ترغب في إرسال التعليمات البرمجية لدمجها في خادم searchcode، فيرجى تحديد أنها مرخصة بشكل مزدوج بموجب ترخيص Apache Public License v2 وGPL v3. وهذا يسمح بسحبها مباشرة دون الحاجة إلى القلق بشأن مشكلات الترخيص في المستقبل.
قبل إجراء أي إرسال، تأكد من التشغيل (يتطلب القماش <2.0 EG تثبيت النقطة 'fabric<2.0')
fab test
يجب اجتياز جميع الاختبارات قبل قبول أي طلب.
لإنشاء خادم رمز البحث، يجب أن يكون لديك أي جهاز يعمل بنظام التشغيل Windows أو Linux أو OSX مثبت عليه Java 11 وإعداد مخضرم. من الناحية المثالية، تريد استخدام نظام التشغيل Unix مع تثبيت Python وPython Fabric.
لاحظ أن مهام النسيج (fab) غير مدعومة حاليًا على نظام التشغيل Windows. يمكنك محاولة استخدامها ولكن من المحتمل أن تحتاج إلى ذلك ضمن Bash for Windows أو شيء مشابه.
لتشغيل اختبارات وحدة جافا سكريبت، قم بتشغيلها في متصفحك إذا لزم الأمر عن طريق الفتح
./src/test/javascript/index.html
لاختبار التطبيق يمكنك إما تشغيله
mvn test
أو
fab test
لاحظ أن هذه الاختبارات ستغطي فقط بعض وحدات التكامل وجافا سكريبت. لتشغيل التغطية الكاملة
fab test_full
مع تشغيل التطبيق في الخلفية للتأكد من أن كل شيء يعمل كما هو متوقع.
لإنشاء إصدار كامل من IE جاهز للإنتاج، يجب عليك تشغيله
fab build_release
والذي سيختبر تجميع الإصدار وإنشائه في مجلد الإصدار وإنتاج الملف "searchcode-server.tar.gz" وهو إصدار جاهز للنشر.
إذا كنت تريد الاختبار والتشغيل ببساطة، فيمكنك التشغيل
fab run
ولكن سيكون هذا هو الإعداد الافتراضي لإنشاء حزمة وتشغيلها. للتشغيل بسرعة، ما عليك سوى فتح بيئة التطوير المتكاملة (IDE) التي تختارها والبدء في تشغيل App.java
هناك مجموعة خاصة من الاختبارات المستخدمة للتحقق من أن منطق الفهرسة لمستودعات GIT والملفات يعمل بشكل صحيح. للقيام بذلك، تحتاج إلى تشغيل أحد نصوص shell التالية،
./assets/integration_test/gitload/gitload.sh
./assets/integration_test/gitupdate/gitupdate.sh
./assets/integration_test/fileupdatetest/fileload.sh
./assets/integration_test/fileload/fileload.sh
ثم قم بإضافة مستودعات git كمستودعات GIT في التطبيق والملفات كمستودعات FILE. ومن المفيد أيضًا ضبط الخصائص
check_repo_chages=60
check_filerepo_changes=60
ولكن ليس مطلوبا. ثم قم بتشغيل رمز البحث. ستضيف البرامج النصية/إزالة/تحديث الملفات كل 60 ثانية مما يجبر كود البحث على إضافة/تحديث/إزالة الملفات من الفهرس في محاولة للوصول إلى أكبر عدد ممكن من مسارات التعليمات البرمجية. بعد القيام بذلك، يجب ألا يكون هناك أكثر من 400 مستند مفهرسة في أي وقت (في حالة فهرسة جميع المستودعات الأربعة) وما لا يقل عن 201 (ملفات fileload.sh + ملفات fileupdatetest + ملفات gitupdate). اترك الأمور تعمل لعدة ساعات للتأكد من أن المنطق يعمل بشكل صحيح.
قبل أن يتم الإصدار، يجب أن يجتاز البناء كافة الاختبارات المذكورة أعلاه، مع تشغيل اختبارات المنطق الخاصة بالمفهرس لمدة لا تقل عن 24 ساعة. للتأكد من أن الأداء مقبول، يتم إجراء الاختبارات أيضًا على كمبيوتر محمول يعمل بنظام Atom.
لتشغيل خادم رمز البحث محليًا، ستحتاج إلى تثبيت أي جهاز يعمل بنظام Windows أو Linux أو OSX مثبت عليه Java 11. تم الاختبار والتعبئة باستخدام الإصدار أدناه.
$ java -version
openjdk version "11.0.1" 2018-10-16
OpenJDK Runtime Environment (build 11.0.1+13-Debian-2)
OpenJDK 64-Bit Server VM (build 11.0.1+13-Debian-2, mixed mode, sharing)
قم بفك ضغط الملف الذي قمت بتنزيله إلى الدليل الذي تريد تشغيل خادم رمز البحث فيه. يجب أن يحتوي هذا الدليل على مساحة قرص أكبر من حجم المستودعات التي تريد فهرستها.
بمجرد فك الحزمة بافتراض أن Java موجودة في المسار الخاص بك (راجع الأمر java -version)، يجب أن تكون قادرًا على تشغيل رمز البحث باستخدام الأمر التالي لنظام التشغيل Linux/OSX/BSD
./searchcode-server.sh
أو لنظام التشغيل Windows
searchcode-server.bat
بعد لحظات قليلة، يجب أن يكون خادم searchcode جاهزًا للتشغيل. بشكل افتراضي، سيتم تشغيله على المنفذ 8080. للاتصال به، أدخل ما يلي في المتصفح،
http://SERVER_IP:8080
تأكد من استبدال SERVER_IP بعنوان IP إذا كان خادمك أو مضيفك المحلي يعمل محليًا. إذا رأيت صفحة بها شريط بحث، فهذا يعني أن كل شيء على ما يرام.
لمزيد من التحكم، قد ترغب في تحرير الملفات المذكورة أعلاه وتضمين الوسيطة java -Xmx لتحديد مقدار ذاكرة الوصول العشوائي المراد استخدامها أو أي خيار Java آخر ترغب في تمريره.
لإدارة مثيل خادم رمز البحث الخاص بك، يلزمك النقر فوق رابط المسؤول في الجزء العلوي الأيمن. أدخل كلمة المرور الافتراضية Adm1n234 (قم بتغييرها عبر ملف الخصائص) لإضافة مستودعات git. إذا كنت بحاجة إلى مساعدة، فراجع صفحة التوثيق (الرابط الموجود أسفل كل صفحة).
للإعداد باستخدام Ubuntu كمهمة تحديث أو SystemD، راجع https://searchcodeserver.com/knowledge-base/upstart-and-systemd-startup-scripts-for-ubuntu.html
ضع في اعتبارك دائمًا أنه من الأفضل إجراء الترقيات من خلال إعادة الفهرسة الكاملة. يمكنك القيام بذلك إما عن طريق حذف محتويات دليل الفهرس الذي قمت بتكوينه في ملف searchcode.properties الخاص بك أو عن طريق النقر فوق الزر "Recrawl & Rebuild Indexes" في شاشة الإدارة.
لترقية المثيل الحالي لرمز البحث، قم بتنفيذ الخطوات التالية.
أوقف المثيل الحالي لخادم searchcode
قم بعمل نسخة احتياطية من ملفات searchcode.properties وsearchcode.sqlite الخاصة بمثيلاتك الحالية.
قم بفك ضغط الحزمة إلى دليل جديد.
يمكنك إما
ابدأ مثيلك مرة أخرى
قم بتسجيل الدخول إلى شاشة المسؤول وانقر على زر "إعادة الزحف وإعادة إنشاء الفهارس".
من المفيد أيضًا مقارنة ملف searchcode.properties الخاص بك بالملف الجديد (أو صفحة الوثائق) حيث قد يكون هناك تكوين جديد يمكنك استخدامه. تأكد أيضًا من مراجعة صفحة الإعدادات حيث من المحتمل أن تكون هناك إعدادات جديدة يمكنك استخدامها.
يتم تغيير حجم جميع صور الخلفية باستخدام الأمر التالي قبل الالتزام بها
convert 1.jpg -quality 75 -resize 1600x1200 1.jpg
إذا كنت ترغب في استخدام Luke لفحص الفهرس، فستحتاج إلى استخدام أي إصدار يطابق lucence في pom.xml حاليًا، هذا هو 5.5.0 لذا ستحتاج إلى استخدام نفس الإصدار من Luke https://github.com/DmitryKey /luke/releases/tag/luke-5.5.0
حقوق الطبع والنشر (ج) لعام 2016 لصالح Boyter Online Services
يخضع استخدام هذا البرنامج لترخيص Fair Source المضمن في ملف LICENSE.txt
من أجل التعامل مع حالة وفاتي أو التخلي عن هذا البرنامج، فإنه يحتوي على بند مفتوح في النهاية حيث سيتغير الترخيص بعد 3 سنوات بالضبط من تاريخ نشر إصدار الإصدار. وهذا يعني أنه إذا تم إصدار الإصدار 1.0.0 في 1 يوليو 2010، فيمكن الحصول عليه باستخدام الترخيص البديل المدرج في 2 يوليو 2013. تم تحديد كل هذا الترخيص والإصدار والوقت أدناه.
بعد التاريخ التالي، لم يتم تحديده بعد، يتم ترخيص إصدار البرنامج "1.3.15" بموجب ترخيص المصدر العادل المضمن في ملف LICENSE.txt أو بموجب ترخيص GNU العام الإصدار 3 مع الشروط المحددة على https://www.gnu .org/licenses/gpl-3.0.txt
قاعدة بيانات OWASP مرخصة بموجب https://creativecommons.org/licenses/by-sa/3.0/ ومصدرها بموجب المشاع الإبداعي من https://codecrawler.codeplex.com/ https://www.owasp.org/index.php/ الفئة:OWASP_Code_Crawler و https://www.owasp.org/index.php/OWASP_Code_Review_Guide_Table_of_Contents تم تعديل قاعدة البيانات هذه إلى JSON مع تصحيحات طفيفة على التهجئة وعلامات الترقيم حيثما أمكن ذلك.
قاعدة بيانات مصنف الملفات مرخصة بموجب https://creativecommons.org/licenses/by-sa/3.0/