一、创建本地git仓库
行为 | 命令 | 详解
|
初始化 | git init | 在本地当前目录中初始化git仓库 |
下载代码 | git clone 地址[ssh\https] | 从网络上某个地址拷贝仓库(repository)到本地并生成本地git仓库
|
切换目录 | cd 子目录名[cmd命令] | 通常用于切换至clone的库 |
创建新目录 | mkdir 目录名 | 在当前目录创建一个新目录 |
设置用户名 | git config --global user.name "用户名" | 设置本地git客户端用户名以标识身份 【不随库而更改,邮箱同理】 |
设置邮箱 | git config --global user.email "邮箱" | 设置本地git客户端邮箱以标识身份 |
防止文件名乱码 | git config --global core.quotepath false | 而 Git 读取文件时,使用 UTF-8 无 ROM 编码,因此在显示中文时可能会出现乱码,如果你的文件名是中文,用此配置可保证文件名不出现乱码,其余乱码情况参照最下 |
二、查看git的信息
行为 | 命令 |
查看自己的用户名 | git config user.name |
查看自己的邮箱地址 | git config user.email |
查看当前代码状态 | git status |
查看当前状态和最新的commit之间不同的地方 | git diff |
查看两个指定的版本之间不同的地方 | diff 版本号1的hash 版本号2的hash |
查看本地以及远程仓库的所有分支【绿本地】 | git branch -a |
查看git的操作记录【同时可看见版本的hash值】 | git log |
查看HEAD的变更记录 | git reflog |
三、操作git(文件提交顺序workspace->stage->repository【刚修改的内容以及操作均视作在workspace中且需commit否则都可以取消】)
行为 | 命令 | 注释 |
添加指定workspace文件至stage | git add <file> | 将指定文件添加至stage并追踪 <file> 可不用双引号,且无需写< >两个符号 |
添加所有workspace文件至stage | git add -A | 将所有workspace文件添加至stage并追踪 |
撤回所有修改且还未入stage的内容 | git checkout -- . | 小数点表示撤回所有,--前后均有空格 |
删除新加且还未入stage的文件 | git clean -xf | 删除当前目录下所有没有track过的文件 |
提交stage中的内容至repository | git commit -m "备注" | 必须有 -m与备注,否则看最下的链接 |
直接将workspace的提交至repository | git commit -am "备注“ | 跳过stage,同时也会追踪 |
本地创建一个新分支 | git branch 分支名 | |
切换当前head指向的分支 | git checkout 分支名 | 不切换则无法对目标分支进行操作 |
删除本地的分支 | git branch -d 分支名 | 先切换才能删除 |
删除远程仓库的指定分支 | git push origin:分支名 | 前提先删除本地的才可 |
创建加切换分支. | git checkout -b 分支名 | 直接新建一个分支然后切换至新创建的分支 |
回到指定的代码版本 | reset --hard 版本号 | 回退到指定版本号的版本,该版本之后的修改都被删除。同时也是通过这个命令回到最新版本。可同reflog配合,回滚后要push 必须要push -f,因为本地指向的版本要比远程更旧。 |
本地所有分支提交到远程仓库 | push | 将当前分支增加的commit提交到远程仓库的该分支下,一般先pull在push防止远程仓库代码丢失 |
本地指定分支提交到远程仓库 | git push origin 分支名 | |
本地提交到远程仓库 | git push -u origin master | 将本地的master分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git push了 |
从远程仓库同步至本地 | pull | 在本地版本低于远程仓库版本的时候,获取远程仓库的commit |
还原某次提交 | reverte 版本号 | 逆向操作一遍指定id操作 |
四、连接远程仓库
github:
1.本地配置用户名与邮箱
使用命令或在C:\用户名\.gitconfig中设置
2.生成ssh key
运行:
ssh-keygen -t rsa -C "你的邮箱"
三次输入可以直接回车
3.复制ssh key
运行:
clip < ~/.ssh/id_rsa.pub
会将生成的ssh key复制到剪贴板,也可以从C:\Users\.ssh中的.pub文件复制
4.github账号中添加key
打开GitHub,进入setting,点击ssh and gpg keys,将ssh key 粘贴至key中,title任意,点击add提交
5.连接github
运行
ssh -T git@github.com
测试是否能连接
6.在github中创建一个仓库
7.连接远程仓库
复制刚刚创建的github仓库中clone or download的ssh或https地址
运行:
git remote add origin 你复制的地址
进行连接
8.将本地库与github上的仓库的主分支进行同步(而后可用git pull同步所有分支)
运行:
git pull origin master
9.推送当前分支至github并将master设置为默认主机(使得未来本地的master分支使用git push时无需指定)
运行
git push -u origin master
gitee:
1.执行上方的1、2步骤
2.gittee账号中添加key
打开设置,编辑SSH 公匙,将SHH key输入其中并填写标题
3.连接gittee
运行
ssh -T git@git.oschina.net
测试是否能连接
4.在gittee中创建一个仓库
5.连接远程仓库
复制刚刚创建的gitee仓库中的ssh或https地址
运行:
git remote add origin 你复制的地址
进行连接
6.执行上面github中的8、9即可
参考:
入门:https://www.cnblogs.com/schaepher/p/5561193.html
操作分支:https://blog.csdn.net/hcjsjqjssm/article/details/84558229
commit 无备注:https://www.cnblogs.com/twoheads/p/9510843.html
常用指令:http://www.softwhy.com/article-8636-1.html
乱码:https://www.cnblogs.com/perseus/archive/2012/11/21/2781074.html