工作中git操作的一些记录

来源:互联网 发布:手机淘宝铃声 编辑:程序博客网 时间:2024/05/29 15:29

完整版大家自己网上找,一大堆。

这是自己工作中实际碰到又不熟悉的一些指令,就是 易错点记录嘛。


查看远程的分支

git ls-remote


将远程的分支弄到本地

git checkout -b xxx origin/xxx

git pull

或者

git checkout --track origin/xxx


删除所有untracked文件夹和文件

git clean -fd


本地rm掉文件,如何恢复

svn可以通过svn update实现,git的方法不一样:

git checkout - - xxx.file

(-- 的含义是后面接的是文件名。举例,一个文件被命名为master,那么git checkout master,无法区分是切换到master分支还是master文件,因此,加入-- 进行区别)



增加文件的执行权限

git ls-files --stage xxx.sh (查看权限,可选)

chmod a+x xxx.sh      (注意,这个需要做,stackoverflow的没有提到这步)

git update-index --chmod=+x  xxx.sh

git commit 即可


快速解决冲突

git checkout --ours xxx.file   (–theirs)

多文件时

grep -lr '<<<<<<<' . | xargs git checkout --ours


英文显示

export LANGUAGE=en_US.UTF-8


错误git push到远程仓库的回退

git revert commit-id

commit-id是上次错误提交的id,执行后,git仓库会新增一次提交,新提交的内容是上一次的内容(回退成功)。


checkout远程分支

git checkout -b xxx origin/xxx


gerrit评审通过但是出现“cannot merge"

通过cherrypick来解决(将当前commit-id放到前面)


git恢复操作

git的操作会被记录,git reflog可以查看不同步骤的commit-id,找到对应id,git reset 恢复即可


git rebase的操作放弃

git rebase --abort


git清理untrack的文件夹和文件

git clean -df


让本地分支和远程分支一样

git fetch origingit reset --hard origin/xxxx


原创粉丝点击