常用命令
克隆
- git clone git@gitee.com:niunafei1/git_learning.git
git 创建分支
- git checkout -b dev
git 切换分支
- git branch dev
- git checkout dev
git 分支删除
- git branch -d fix
- 如果分支未被合并会异常警告 -D强制删除
- git branch -D fix
创建新分支推送远程
- git push --set-upstream origin dev
git 分支管理与整理 --no-off 参数
- git merge niudev //当前分支合并niudev分支
- git merge --no-ff -m "merge with no-ff" dev //会强制禁用Fast forward 合并整理成新的一次提交,多合1
- git rebase master //称为变基,本次操作会被记录为一次合并提交,将整个当前分支移动到master分支的起点合并master分支上所有新的提交
- git rebase 后解决合并冲突,解决方案
- 1、git rebase --abort 来完全取消变基
- 2、git rebase --skip 来完全忽略该提交。这样,有问题的提交所引入的变化就不会被添加到历史中
知识点
修改git全局配置
- git config --global user.name "Your Name"
- git config --global user.email "email@example.com"
git init 初始化仓库
- git init 命令把当前目录变成本地Git管理仓库:
git 简单操作
- 添加文件
- git add readme.txt
- 将文件推入git仓库
- git commit -m "wrote a readme file"
- 对最新一条 commit 进行修正
- commit --amend -m "wrote a readme file" //git commit --amend -m'注释',替换(commitId值变了,所以就是替换)掉原来的commit记录
状态查询
- git status
git 关联远程库
- git remote 获取远程分支名称默认origin
- git remote -v 获取远程信息详情
- git remote add origin git@gitee.com:niunafei1/git_learning.git //本地仓库关联远程库
-修改远程库两种方案
1、git remote set-url origin git@gitee.com:niunafei1/git_learning.git
2、先删除在添加
git remote rm origin
git remote add origin git@gitee.com:niunafei1/git_learning.git
git 远程克隆
- git clone git@gitee.com:niunafei1/git_learning.git
第一次提交远程
- git push -u origin master
如果本地创建master 分支,分支建立关联
- git branch --set-upstream-to=origin/master master
- git push --set-upstream origin dev //创建新分支推送远程
git 创建分支
- git checkout -b dev
git 切换分支
- git branch dev
- git checkout dev
git 分支删除
- git branch -d fix
- 如果分支未被合并会异常警告 -D强制删除
- git branch -D fix
git 分支管理和整理 --no-off 参数
- git merge niudev //当前分支合并niudev分支
- git merge --no-ff -m "merge with no-ff" dev // 会强制禁用Fast forward 合并整理成新的一次提交,多合1
- git rebase master //称为变基,本次操作会被记录为一次合并提交,将整个当前分支移动到master分支的起点合并master分支上所有新的提交
- git rebase 后解决合并冲突,解决方案
- 1、git rebase --abort 来完全取消变基
- 2、git rebase --skip 来完全忽略该提交。这样,有问题的提交所引入的变化就不会被添加到历史中
临时存储开发
- 创建临时存储
- git stash
- 查看当前分支临时存储
- git stash list
- 使用临时存储代码 标识
- git stash apply stash@{0}
- git stash pop
- 删除临时存储
- git stash drop
复制任意提交到当前分支
- git cherry-pick 4c805e2
git 标签管理
- 创建标签
- git tag v1.0
- git tag -a v2.0 -m '标签备注' -a 标签名 -m 备注
- 查看标签
- git tag 标签列表
- git show v1.0 标签详情
- 删除标签
- git tag -d v1.0
git 定时pull
- $ screen
- $ for((i=1;i<=10000;i+=1)); do sleep X && git pull; done
- 上面脚本同时执行
异常处理
- 1、
- fatal: refusing to merge unrelated histories
- 方案 :参数后面添加 --allow-unrelated-histories 命令