74 lines
2.9 KiB
JSON
74 lines
2.9 KiB
JSON
{
|
|
"id": "2c9fc0de-3ee7-45e1-a5df-c86206ad78b5",
|
|
"snapshot": "os",
|
|
"instruction": "Could you help me push the changes from commandline in current project to origin main, with the commit message \"daily update\"?",
|
|
"source": "https://nikki-ricks.medium.com/how-to-use-git-add-commit-and-push-in-vs-code-and-command-line-35c0e8c47b62",
|
|
"config": [
|
|
{
|
|
"type": "download",
|
|
"parameters": {
|
|
"files": [
|
|
{
|
|
"url": "https://drive.usercontent.google.com/download?id=1aANBCEHT6K8GmHDMEYtL1LQXdApqVoGv&export=download",
|
|
"path": "/home/user/Downloads/binder.zip"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "execute",
|
|
"parameters": {
|
|
"command": [
|
|
"/bin/bash",
|
|
"-c",
|
|
"git config --global user.name \"xlang\" && git config --global user.email \"xlang2024anonym@gmail.com\" && mkdir -p /home/user/projects/remote_project && cd /home/user/projects/remote_project && git init --initial-branch=main && git config receive.denyCurrentBranch ignore "
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "execute",
|
|
"parameters": {
|
|
"command": [
|
|
"/bin/bash",
|
|
"-c",
|
|
"unzip -q /home/user/Downloads/binder.zip -d /home/user/projects/ && cd /home/user/projects/binder && git init --initial-branch main && git remote add origin /home/user/projects/remote_project"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "launch",
|
|
"parameters": {
|
|
"command": [
|
|
"gnome-terminal",
|
|
"--maximize",
|
|
"--working-directory=/home/user/projects/binder"
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"trajectory": "trajectories/",
|
|
"related_apps": [
|
|
"os",
|
|
"terminal"
|
|
],
|
|
"evaluator": {
|
|
"func": "check_include_exclude",
|
|
"result": {
|
|
"type": "vm_command_line",
|
|
"command": [
|
|
"/bin/bash",
|
|
"-c",
|
|
"cd /home/user/projects/remote_project; git log --oneline | head -n 1 | awk '{for (i=2; i<=NF; i++) {printf \"%s%s\", $i, (i==NF ? \"\" : \" \")}; print \"\"}'; remote_id=$(git log --oneline | head -n 1 | awk '{print $1}'); cd /home/user/projects/binder; local_id=$(git log --oneline | head -n 1 | awk '{print $1}'); if [ \"${local_id}\" = \"${remote_id}\" ]; then echo \"repo is synchronous\"; else echo \"repo is not synchronous\"; fi"
|
|
]
|
|
},
|
|
"expected": {
|
|
"type": "rule",
|
|
"rules": {
|
|
"include": [
|
|
"daily update",
|
|
"repo is synchronous"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
} |