gitlink-cli/skills/gitlink-file/examples/file-workflow.md

1.6 KiB
Raw Blame History

文件操作完整工作流示例

场景:开发者需要通过 API 在仓库中创建、更新或删除文件。

前置条件

  • gitlink-cli 已安装并登录
  • 熟悉 GitLink 文件操作 APIbase64 编码、SHA 校验)

工作流步骤

Step 1创建文件

# content 必须 base64 编码
# 方式 1Linux/macOS
CONTENT=$(echo -n "# 项目文档\n\n这是一个示例文档" | base64)

# 方式 2直接传递
gitlink-cli api POST /:owner/:repo/create_file --body '{
  "filepath": "docs/guide.md",
  "content": "IyDpobnnm67mlrnlvI8KCuacrOeahOWLvumZpGRvYw==",
  "branch": "master",
  "message": "docs: add project guide"
}'

Step 2获取文件 SHA用于更新/删除)

# 获取文件信息(含 SHA
gitlink-cli api GET /:owner/:repo/sub_entries --query 'filepath=docs/guide.md&ref=master'
# 从返回结果中取 entries.sha

Step 3更新文件

gitlink-cli api PUT /:owner/:repo/update_file --body '{
  "filepath": "docs/guide.md",
  "content": "<base64编码的新内容>",
  "sha": "<从sub_entries获取的sha>",
  "branch": "master",
  "message": "docs: update project guide"
}'

Step 4删除文件

gitlink-cli api DELETE /:owner/:repo/delete_file --body '{
  "filepath": "docs/old-guide.md",
  "sha": "<文件sha>",
  "branch": "master",
  "message": "docs: remove outdated guide"
}'

注意事项

  • 创建文件时 content 必须使用 base64 编码
  • 更新和删除文件需要提供文件的 SHA 值
  • SHA 可通过 sub_entries 接口获取
  • 文件操作会直接在指定分支上生成一个提交