一、分支管理
创建本地分支git checkout –b xxx
P.S. 此时创建的分支是从当前分支状态切出去的
删除本地分支git branch -d 分支名
创建远程分支git push origin 你的新分支名
删除远程分支git push origin -d 分支名
切换到zzz分支git checkout zzz
关联本地分支与远程分支 git branch --set-upstream-to=yyy(远程分支) xxx(本地新建分支)
查看分支详情 git branch –vv
查看所有分支(本地与远程) git branch –al
二、代码推送与拉取
拉取远程代码到本地 git pull
查看git add 命令添加的文件有哪些git status –s
commit信息写错了,然后想撤销本次commit,同时保留本次的修改并再次提交,步骤如下:
查看上一次提交id → git log
git reset --soft last_commit_id
git add . && git commit -m “xxx” && git push –f
强制拉取:
git fetch --all
git reset --hard origin/master
git pull
三、git lfs使用方法
1、找出当前目录所有大于100MB的文件
find ./ -size +100M
然后就会显示所有符合条件的文件
./test/xxx1.whl
./test/xxx2.whl
./test/xxx3.whl
2、将这些大文件加到 lfs track列表中
git lfs track ./test/xxx1.whl
git lfs track ./test/xxx2.whl
git lfs track ./test/xxx3.whl
3、后面的操作和普通git一样
git add . & git commit -m "xxx" & git push
P.S. git lfs track
这个操作要在git add .
前面
4、显示当前被 lfs 追踪的文件列表
git lfs ls-files
5、查看现有的文件追踪模式
git lfs track
6、取消 git lfs 对某文件的追踪
git lfs untrack "\*xx.a"
四、git 问题汇总
-
git pull 显示 Already up-to-date,但文件并没有更新
运行以下两步:
git reset HEAD .
git checkout . # 丢弃所有本地未提交的修改
-
git pull时出现Automatic merge failed; fix conflicts and then commit the
result
放弃本地改动,以远程最新为准git reset --hard 你需要下拉的分支(默认master)