代码提交
更新: git pull
查看当前提交情况 git status
加到暂存区 git add 文件路径
添加备注 git commit -m '内容'
提交服务器 git push
返回上一个版本 git reset --hard HEAD^
查看历史版本号 git log
返回指定版本 git reset --hard 2a5a4506cc214fe4d6429dc10b28f8a25b3811fc
退回最后这个版本 git reflog
冲突合并
(1)将本地修改存起来,并还原至修改之前的内容 git stash
将当前的Git栈信息打印出来 git stash list
(2)暂存了本地修改之后,pull内容 git pull
(3)还原暂存的内容 git stash pop stash@{0}
(4)解决文件中冲突的的部分解决冲突后 提交服务器
(5)检查是否更新 删除缓存中的数据 git stash drop stash@{0} | git stash clear
.gitignore 忽略文件
忽略文件不生效的原因:是.gitignore只能忽略那些原来没有被追踪的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。
git rm -r --cached .
git add .
git commit -m 'update .gitignore'
git push -u origin master
注意:
要想起作用,必须要在这些文件不在暂存区中才可以,.gitignore文件只是忽略没有被staged(cached)文件, 对于已经被staged文件,加入ignore文件时一定要先从staged移除,才可以忽略。
设置本地文件不提交
git update-index --assume-unchanged ruoyi/src/main/resources/application-online.yml
git切换分支
查看已有的分支目录 git branch -a
然后输入命令切换分支 git checkout -b develop origin/develop
回到主分支 git checkout master
还原至某个历史版本
还原至某个历史版本: (上个版本)/版本号 git reset --hard origin/develop
还原某个文件:git checkout -- <file>
查看历史版本:git log --pretty=oneline
git reset --hard fa3b1a735501d89c966dd598d3c2bf41030b4e28
放弃本地更新(与服务器一致)
git fetch --all
git reset --hard origin/master
还原至某个历史版本: (上个版本)/版本号 git reset --hard origin/develop
还原某个文件: git checkout -- <file>
查看历史版本: git log --pretty=oneline
还原至某个版本 git reset --hard fa3b1a735501d89c966dd598d3c2bf41030b4e28
SSH协议,公钥&码云
查看
git config user.name
git config user.email
设置
git config --global user.name "xb12369"
git config --global user.email "1234@qq.com"
生成公钥与私钥
ssh-keygen -t rsa -C "1234@qq.com"
统计提交代码行数
// https://blog.youkuaiyun.com/sinat_27115575/article/details/102474236
git log --author="xujinwen" --pretty=tformat: --numstat | gawk '{ add += $1 ; subs += $2 ; loc += $1 - $2 }
END { printf "增加的行数:%s 删除的行数:%s 总行数: %s\n",add,subs,loc }'