git基本使用

常用命令

git init
# 添加远程仓库
git remote add origin https://gitee.com/zhengqianya/springcloud-heima.git
# 更新最新分支情况
git remote update   
# 查看当前分支
git branch 
# 将远程分支和本地的master分支关联
git branch --set-upstream-to=origin/mq-advanced-demo master 
# 强制合并远程分支和本地分支的差异
git pull --allow-unrelated-histories 
# 查看关联情况
git branch -vv 

基本命令

### 初始化仓库
git init  
### 添加文件到本地仓库 
git add .(文件name) || *

### 添加一个或多个文件到暂存区:
git add [file1] [file2] ...

### 添加指定目录到暂存区,包括子目录:
git add [dir]

### 添加当前目录下的所有文件到暂存区:
git add .


### 添加文件描述信息 
git commit -m "xxxxxx"  

### 把本地仓库的变化连接到远程仓库主分支【重点步骤】 
git pull origin master  

### 将远程服务器origin拉去合并到本地master分支,并合并不相干文件 
git pull origin master -–allow-unrelated-histories

### git push <远程主机名> <本地分支名>:<远程分支名>
git push origin master:master

### 如果本地分支名和远程分支名一样的情况下,可以省略:<远程分支名>。如果远程主机中不存在该分支,那么会被创建。我们就可以使用命令:

### 把本地仓库的文件推送到远程仓库 
git push -u origin master  

### 如果本地分支已经跟远程分支建立了追踪关系,那么可以省略<远程主机名>和:<远程分支名>
git push origin 

### 在之前的命令中,我们都会添加<远程主机名>来指定要推送到哪一台主机上,但如果连主机名都不想写,可以吗?当然可以,我们只需要保证本地仓库只跟一台远程主机有关联即可。其实我们在正常的开发中,远程主机确实只有一个,那就是我们克隆的远程项目的主机。如果不使用特殊的操作,根本用不着跟其他主机建立联系。
git push

### 输入可以看到自己的邮箱和用户名
git config --list

### 使用这行命令修改你的邮箱
git config --global --replace-all user.email “你的邮箱”

### 使用这行命令修改你的用户名
git config --global --replace-all user.name “你的用户名”

### 使用branch -a可查看本地及远程所有分支
git branch -a

### 远程仓库地址url  链接远程仓库,创建主分支
git remote add origin url  

### 如果远程新建了分支,本地查看却没有,可使用git remote update进行远程的更新
git remote update

### 查看本地分支及追踪的分支,可能本地分支并没有追踪远程分支
git branch -vv

### 建立 dev 分支
git branch dev   

### 删除本地分支
git branch -d dev 

### 强制删除本地分支
git branch -D dev

### 查看当前分支
git branch  

### 我们可以通过--graph来观看分支
git log --oneline --graph

### 切换到dev分支
git checkout dev  

### 使用 checkout -b + 分支名, 就能直接创建和切换到新建的分支
git checkout -b  dev    

### "-am": add 所有改变 并直接 commit
git commit -am "change 3 in dev"  

### 如果远程新建了分支,本地查看却没有,可使用git remote update进行远程的更新
git remote update

### 本地分支和远程分支建立追踪关系的三种方式
### 使用此种方式可以在本地分支已经追踪了某个远程分支的情况下,修改追踪的远程分支
git branch --set-upstream-to=<远程主机名>/<远程分支名> <本地分支名>

git branch --set-upstream-to=<远程主机名>/<远程分支名> <本地分支名> --allow-unrelated-histories
### --allow-unrelated-histories
### 本地合并时遇到refusing to merge unrelated histories的错误https://www.cnblogs.com/jinbang/p/8920252.html
### 如果git merge合并的时候出现refusing to merge unrelated histories的错误,原因是两个仓库不同而导致的,需要在后面加上--allow-unrelated-histories进行允许合并,即可解决问题

### 加上-u参数,这样push时,本地指定分支就和远程主机的同名分支建立追踪关系。
git push -u <远程主机名> <本地分支名>

### 新分支指针指向 <远程主机名>/<远程分支名> 所指的位置。 
git checkout -b <本地分支名> <远程主机名>/<远程分支名>


### 查看远程仓库fetch和push地址
git remote -v

### 最后查看本地分支和远程分支关联情况
git branch -vv

### 注意:在远程创建了一个新的分支dev,但是我在本地使用命令git branch -r查看远程的所有分支,没有这个新分支,我们需要去更新一下远程仓库在本地仓库的缓存,使用git fetch origin或者git remote update origin --prune命令更新,然后再查看git branch -r,就能看到更新啦
### 仓库中增、删、查、改 提交文件操作的流程(工作区 —> 暂存区 —> git仓库)

#查看文件工作区修改的状态
git status -s

#把工作区的文件放到暂存区
git add .  //将本目录下全部文件放入暂存区
git add 文件名 //放单个文件或文件夹
git add -A  //一次性的把仓库中的文件进行上传到暂存区

### 暂存区的文件添加到git仓库
git commit -m 消息

#查看commit日志
git log
### git log详细命令:git log 命令详解RollingPin的博客-CSDN博客git log命令详解

### 提交简化操作
git commit -am '修改hello文件'
### 等价于git add hello && git commit -m '修改hello文件'
### 注意:使用的前提是hello文件曾经被add过,也就是处于tranced状态

### 撤销add操作
### 可以直接使用命令
git reset HEAD
### 这个是整体回到上次一次操作
### 绿字变红字(撤销add)

### 如果是某个文件回滚到上一次操作: 
git reset HEAD  文件名

### 红字变无 (撤销没add修改)
git checkout -- 文件
### 由于一个本地仓库是可以关联多个远程仓库的,因此,
### 可以设置多个「别名」分别指向不同的远程仓库
### (比如一个 GitHub、一个 GitLab、一个 Gitee),然后通过别名的方式方便、
### 快速地拉取某个远程仓库的代码或者将代码推送至某个远程仓库。




### 如果直接执行git push 可能会出现 
### fatal the current branch master has no upstream branch的错误,
### 这时需要执行git push -u origin master或 git push --set-upstream origin master,
### 之后就可以直接用git push或git pull指令了

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值