git常用命令/git 部分高级命令备忘录

git常用命令/git 部分高级命令备忘录

常用命令

克隆

- 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 命令