git 安装、配置及使用
1、安装
sudo apt-get install git
安装完成后,检查是否安装成功
git --version
2、配置
配置用户名密码:
当你安装Git后首先要做的事情是设置你的用户名称和e-mail地址。这是非常重要的,因为每次Git提交都会使用该信息。它被永远的嵌入到了你的提交中:
$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com
重申一遍,你只需要做一次这个设置。如果你传递了 --global 选项,因为Git将总是会使用该信息来处理你在系统中所做的一切操作。如果你希望在一个特定的项目中使用不同的名称或e-mail地址,你可以在该项目中运行该命令而不要--global选项。
配置Linux ssh key:
执行命令:
ssh-keygen -t rsa -C "xx@xx.com" //这里写自己的邮箱
一路回车,生成密钥对
$cat /root/.ssh/id_rsa.pub
复制公钥到gitlab. 完成。
查看配置:
git config --list
3、使用
常用命令
-
克隆
git clone git@gitlab.pre.starclink.com:bigdata/front-end-api.git
-
添加远程仓库
git remote add upstream git@bitbucket.org:hadoop-tech/battlefront.git
-
查看远程分支
git remore
-v : 列出详细的信息
-
删除远程仓库
git remote remove upstream
-
从远程拉代码
git fetch upstream
-
合并代码
git rebase upstream/dev dev // 合并远程dev分支到本地dev分支
git merge upstream/dev dev
-
将工作区代码提交到暂存区
git add .
.
: 代表全部 -
将暂存区代码提交到分支
git commit -m '修改说明'
-- amend : 修改上一次提交
-- no-verify : 不使用 pre-commit 进行验证
-
查看当前仓库状态
git status
-
查看当前仓库修改
git diff
-
保存当前工作区
git stash
-
从git栈中恢复工作区
git stash pop
-
查看本地分支
git branch
-a : 详细显示
-
切换分支
git checkout dev
-
新建分支并切换到新分支上
git checkout -b dev origin/dev
作用是checkout远程的dev分支,在本地起名为dev分支,并切换到本地的dev分支
-
不使用 pre-commit 进行验证
git commit -m 'fix' --no-verify
当远程删掉了某个分支后,用git branch -a
还能在本地看到
- 首先查看下哪些分支需要清理
git remote prune <远程版本库名> --dry-run
- 清理
git remote prune <远程版本库名>
解决冲突
将远程拉下来的代码和本地的进行合并时,可能会产生冲突,并切入到一个临时分支。
解决方法:
git status查看状态,找到出现冲突的文件,逐一修改,修改完成后git add filename,最后git rebase --continue 此时如果冲突解决,会自动切回原来所在分支。
最后提交即可:
git push origin master
撤销回滚
- 清除缓存区readme.txt文件放回工作区:
git reset HEAD readme.txt
- 将工作区回到上一个版本状态:
git checkout -- readme.txt
上一个版本状态:
一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
- push到远程仓库后撤销:
- 1.回滚到之情commit
git reset --hard commit-id
- 2.强制更新远程仓库
git push origin HEAD --force
- 1.回滚到之情commit