git学习笔记

基本命令
git config --global user.name 'tangpengcheng' 设置git全局用户名
git config --global user.email 'tangpengcheng123@126.com' 设置git全局用户邮箱
git config --global alias.st status 为status命令起别名st
git config --global alias.unstage 'reset HEAD' 为reset HEAD命令起别名unstage
git init 初始化当前目录为一个git仓库
git add readme.txt 添加文件
git commit -m "修改了xxx" 提交添加的文件,git提交文件之前需要将被提交的文件add进来
git diff file.txt 查看文件修改内容
git status 查看当前状态
git log 查看git日志
git log --pretty=oneline --abbrev-commit 查看git提交历史记录列表
git reset --hard HEAD"^" 回到上一个版本,windows下要添加双引号
git reset --hard "f3235" 跳转到f32235开头的版本
git reflog 查看文件版本变更记录
git checkout -- readme.txt 让这个文件回到最近一次git commit时的状态,如果已经add了则先使用git reset --hard HEAD回到add之前的状态,没有--则是切换分支命令
git rm test.txt 从版本库和磁盘中删除test.txt文件

创建秘钥和公钥
运行cmd目录下的git-gui -> repository ->git bash 进入gitbash界面(windows)
ssh-keygen -t rsa -C "youremail@example.com" 创建ssh链接的秘钥和公钥,使用notpad++(或其他非记事本编辑器)打开id_rsa.pub,登录github进行设置
ssh -T git@github.com 使用此命令如果测试通过,但是在cmd中又提示权限验证失败,可能是你生成秘钥的时候修改了秘钥的保存路径,运行以下命令查看git搜索的目录是哪儿
ssh -v git@github.com 如果路径不对可以在修改etc\ssh\ssh_config(windows路径)文件,把这两行取消注释,然后修改成你现在的秘钥路径
IdentityFile D:/my_secret_key/ssh/id_rsa
IdentityFile D:/my_secret_key/ssh/id_dsa
然后重新打开cmd应该就可以了

远程仓库
git remote add origin https://github.com/tpc1990519/learngit.git 添加远程仓库地址到本地当前目录下的仓库,并起了别名为origin,https协议方式,origin为git默认远端仓库名称
git remote add origin git@github.com:tpc1990519/gitskills.git 添加远程仓库地址到本地当前目录下的仓库,并起了别名为origin,ssh协议方式,,origin为git默认远端仓库名称
git push -u origin master 推送本地仓库内容到远程仓库 第一次推送需要-u参数
git push origin master
git clone git@github.com:tpc1990519/gitskills.git 从远程仓库克隆到本地,会自动新建gitskills文件夹,,默认仓库名为origin
git branch --set-upstream dev origin/dev 设置本地dev分支与远程仓库origin中的dev分支进行链接
git pull 从远端仓库更新所有内容到本地仓库当前分支,并合并到当前分支,只有设置了分支链接的才能更新,master分支默认链接

合并其他仓库的内容
git remote add pb git@github.com:tpc1990519/gitskills.git 添加远程仓库地址到本地当前目录下的仓库,并起了别名为pb
git fetch pb 从远程pb仓库获取内容到本地别名为pb的仓库中,
git merge pb/master 如果pb中存在master分支则合并pb 仓库中master分支的内容到origin仓库的当前分支下
git remote -v 显示克隆的仓库列表,fetch表示可以从此仓库获取内容,push表示可以推送内容到此仓库
git remote rename pb paul 重命名pb仓库为paul
git remote rm paul 删除远端paul仓库的引用

分支
git branch dev 从当前分支上创建分支
git checkout dev切换到分支dev
git checkout -b dev 相当于git branch dev创建分支和git checkout dev切换到分支dev
git branch 查看所有分支,*开头的为当前分支
git merge dev 合并指定分支到当前选中分支
git branch -d dev 删除分支-D强行删除
git merge --no-ff -m "merge with no-ff" dev 使用普通方式合并分支,可以查看分支合并历史记录
git log --graph --pretty=oneline --abbrev-commit 查看git提交历史记录分支图

解决冲突:当提交出现冲突时,手动解决冲突并在主分支在提交一次即可

保存工作区
git stash 保存工作区add的内容,并清空工作区
git stash list 查看保存下来的工作区内容列表
git stash apply stash@{0} 恢复stash@{0}的内容到当前工作区
git stash pop 恢复保存的内容到当前工作区,并清空所有statsh

标签
git tag 查看当前分支的标签
git tag v1.0 在当前分支当前commit版本添加标签v1.0
git tag v0.9 6224937 在当前分支对6224937 提交添加标签
git show v0.9 查看标签的提交详情
git tag -a v0.1 -m "version 0.1 released" 3628164 -a指定标签名,-m指定说明文字
git tag -d v0.1 删除标签
git push origin v1.0 推送标签v1.0到远程仓库
git push origin --tags 推送所有标签到远程仓库
git push origin :refs/tags/v0.9 删除远程仓库标签v0.9,删除之前要先删除本地标签

忽略提交
根目录下新建.gitignore文件,模版:https://github.com/github/gitignore
使用Windows时,如果你在资源管理器里新建一个.gitignore文件,它会提示你必须输入文件名,但是在文本编辑器里“保存”或者“另存为”就可以把文件保存为.gitignore了。
git add -f App.class 强制添加一个被忽略的文件
git check-ignore -v App.class 检测某个被忽略的文件对应忽略规则文件第几行

学习地址:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
发布了13 篇原创文章 · 获赞 6 · 访问量 2万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览