我面临的挑战是,我希望简化极端初学者用户的生活,但是必须通过Git共享文件。它们相当不堪重负,甚至大多数基本Git命令的顺序都容易出错。
所以我想提供一个命令save
,它可以一次性添加,提交,推送,拉取所有基本工作。他们永远不会碰到分店。他们很少会编辑相同的文件。
你能想出一个与Git同步并且“大部分时间都在”工作的脚本吗?
也许你可以指出我可以在哪一点集成像meld
这样的合并工具。我知道这一切都会效率低下,但至少他们可以工作。
不幸的是,没有其他选择(替换Git,更好的知识,......)。
答案 0 :(得分:2)
您需要在脚本中添加一个拉动,否则用户必须手动拉动以确保它们处于首位。如果用户碰巧碰到相同的文件,添加存储也会使其更加强大。
#!/bin/bash
git stash
git pull origin master
git stash pop
if [ $? -eq 0]
then
git add -A
git commit -m "$1"
git push origin master
else
echo "ERROR: Merge conflict!"
fi
然后,您可以将此脚本保存在/ usr / local / bin中,并且可以通过名称和一个设置为提交描述的参数来调用脚本。
答案 1 :(得分:1)
假设你们都在unix机器上。
让他们全部添加到他们的.bash_profile
。
function save(){
git stash;
# might want to replace `master` with
# whatever branch they are pushing to.
git pull origin master;
git stash pop;
git add --all;
git commit -m "$1";
git push origin master;
}
这样他们就可以从命令行访问这个简单的函数。 您甚至可以编写一些检查以查看它们是否提供了正确数量的参数等。 用法示例:
save "did the thing I was supposed to do";
您也可以尝试让他们使用git的GUI。