说明: 以下内容为git使用过程中的常用命令总结
git命令的使用
安装
- linux
sudo apt install git
- win
官网下载地址(网速不是太快)
创建当前认证用户
- 全局
git config --global user.email 'youremail'
git config --global user.name 'yourname'
- 当前
git config user.email 'youremail'
git config user.name 'yourname'
创建版本库
- 进入要初始化的目录
git init
版本回退与创建
- 创建项目文件编辑
touch filname
- 创建版本
git add filename
git commit -m 'version_str'
- 查看版本记录
git log
- 回退上个版本
git reset --hard HEAD^
其中HEAD表示当前最新版本,HEAD^ 表示当前版本的前一个版本,HEAD^^表示当前版本的前前个版本,也可以使用HEAD~1 表示当前版本的前一个版本,HEAD~100表示当前版本的前100版本。 - 回退版本到撤销版本之前的版本
git reflog
查看版本号
git reset --hard 版本号
查看当前工作状态
`git status`
撤销修改
- 丢弃工作区的改动
git checkout -- filename
- 把暂存区的修改撤销掉,重新放回工作区
git reset HEAD filename
删除文件
- 本地删除
rm filename
- 执行git删除
git rm
git commit
- 撤销删除
git checkout -- filename
分支管理
快速合并 主分支未更改,子分支更改
- 查看当前工作分支
git branch
- 创建分支并切换到该分支
git checkout -b branchname
- 切换分支
git checkout branchname
- 合并分支(先切换至主分支)
git merge branchname
- 删除分支
git branch -d branchname
非快速合并 主、子分支都需更新,强行合并则报错
- 子、主分支编辑完毕,切换至主分支
git merge branchname
- 在GNU窗口输入新的分支名后按ctrl+X
- 删除子分支
不适用fast forward 模式合并
- 合并时指令
git merge --no-ff -m versionname branchname
保存当前分支工作状态切换其他分支工作
- 保存当前分支进度
git stash
- 切换其他分支工作
- 会到当前分支,查看保存的工作状态
git stash list
- 回复当前分支工作状态
git stash pop
github使用
创建仓库
创建ssh账户
- 点击账户头像后的下拉三角,选择’settings’
如果某台机器需要与github上的仓库交互,那么就要把这台机器的ssh公钥添加到这个github账户上 - 点击’SSH and GPG keys’,添加ssh公钥。
- 在ubuntu的命令行中,回到用户的主目录下,编辑文件.gitconfig,修改某台机器的git配置。
- 修改为注册github时的邮箱,填写用户名。
[user] email = youremail name = yourname
- 使用如下命令生成ssh密钥。
ssh-keygen -t rsa -C "邮箱地址"
- 进入主目录下的.ssh文件件,下面有两个文件。
公钥为id_rsa.pub
私钥为id_rsa
查看公钥内容,复制此内容 - 回到浏览器中,填写标题,粘贴公钥
克隆仓库
`git clone store_url`
上传分支
- 项目克隆到本地
- 创建工作分支
- 推送至github
git push origin branchname
- 记住密码设置
git config --global credential.helper store
输入一次账户密码之后你就不用重复输入
添加远程仓库
git remote add origin https://github.com/ceaqw/spider.git
将本地分支跟踪服务器分支
git branch --set-upstream-to=origin/远程分支名称 本地分支名称
从远程服务器拉去代码
git pull orgin 运城分支名称
使用上述命令会把远程分支smart上的代码下载并合并到本地所在分支。