Skip to content
ეს გვერდი შეიქმნა და ითარგმნა ხელოვნური ინტელექტის დახმარებით. თუ შეამჩნევთ უზუსტობას, გთხოვთ, დაგვეხმარეთ გაუმჯობესებაში. GitHub-ზე რედაქტირება

Git ოპერაციები

git_operations ინსტრუმენტი PRX აგენტებს ვერსიების კონტროლის შესაძლებლობებს ერთიანი ინტერფეისით აძლევს. shell ინსტრუმენტით git ბრძანებების გამოძახების ნაცვლად (რაც სენდბოქსის შეზღუდვების ქვეშ მოქმედებს), git_operations სტრუქტურირებულ, უსაფრთხო API-ს სთავაზობს ყველაზე გავრცელებული Git სამუშაო ნაკადებისთვის.

ინსტრუმენტი სამუშაო სივრცის რეპოზიტორიაზე მუშაობს. იგი all_tools() რეესტრში არის რეგისტრირებული და ყოველთვის ხელმისაწვდომია სრული ინსტრუმენტების ნაკრებით გაშვებისას.

კონფიგურაცია

toml
[security.tool_policy.tools]
git_operations = "allow"    # "allow" | "deny" | "supervised"

გამოყენება

git_operations ინსტრუმენტი operation პარამეტრს იღებს, რომელიც შესასრულებელ Git მოქმედებას მიუთითებს:

status

მიმდინარე რეპოზიტორიის სტატუსის შემოწმება:

json
{
  "name": "git_operations",
  "arguments": {
    "operation": "status"
  }
}

diff

ცვლილებების ნახვა სამუშაო ხეში ან კომიტებს შორის:

json
{
  "name": "git_operations",
  "arguments": {
    "operation": "diff",
    "args": ["--staged"]
  }
}

commit

კომიტის შექმნა შეტყობინებით:

json
{
  "name": "git_operations",
  "arguments": {
    "operation": "commit",
    "message": "fix: resolve race condition in session cleanup"
  }
}

push, pull, log, branch

სრული სიისთვის იხილეთ ინგლისურენოვანი დოკუმენტაცია. ყველა ოპერაცია operation პარამეტრით და არასავალდებულო args მასივით მუშაობს.

პარამეტრები

პარამეტრიტიპისავალდებულონაგულისხმევიაღწერა
operationstringდიახ--Git ოპერაცია: "status", "diff", "commit", "push", "pull", "log", "branch"
messagestringპირობითი--კომიტის შეტყობინება ("commit" ოპერაციისთვის სავალდებულო)
argsarrayარა[]Git ბრძანებისთვის გადაცემული დამატებითი არგუმენტები

უსაფრთხოება

Shell-თან შედარება

git_operations-ის გამოყენება shell ინსტრუმენტით git-ის გაშვების ნაცვლად რამდენიმე უსაფრთხოების უპირატესობას იძლევა:

  • არგუმენტების ვალიდაცია: პარამეტრები შესრულებამდე ვალიდდება, ინჯექციის შეტევების პრევენციისთვის
  • სტრუქტურირებული გამოსავალი: შედეგები პროგნოზირებად ფორმატში იპარსება და ბრუნდება
  • shell-ის გარეშე: არგუმენტები პირდაპირ Git-ს გადაეცემა shell-ის ინტერპრეტაციის გარეშე
  • დეტალური პოლიტიკა: git_operations შეიძლება ნებადართული იყოს, სანამ shell უარყოფილია ან ზედამხედველობის ქვეშაა

დესტრუქციული ოპერაციების დაცვა

ინსტრუმენტი მოიცავს დაცვებს გავრცელებული დესტრუქციული ოპერაციებისგან: force push გაფრთხილებით იწერება, -D (იძულებითი წაშლა) ოპერაციები აუდიტის ჟურნალში მოინიშნება.

დაკავშირებული გვერდები

Released under the Apache-2.0 License.