git教程

一、git常用命令
1. 设置用户签名
    git config --global user.email "邮箱名"
    git config --global user.name "你的名字"
2. 初始化本地库
    git init
3. Git工作区、暂存区和版本库

4. 将文件添加到暂存区
    git add 文件名               单独文件放到暂存区
    git add --all                    所有文件放到暂存区
    git add .                         所有文件放到暂存区(常用)
    git status                       查看命令(绿色为已放到暂存区的文件,红色为未放到暂存区的文件)
    git rm --cached 文件名  将暂存区文件取消暂存,返回到工作区

5. 将暂存区文件提交到历史区(包含回退某个版本)
    git commit -m "描述文字"  提交代码
    git log                                查看当前历史区提交版本信息
    git reflog                            查看所有操作记录    
    git reset --hard HEAD^      回退到上一个版本
    git reset --hard HEAD~n    回退到上n个版本
    git reset --hard 版本号       回退到指定某个版本
    注:回退后当前版本之后的版本不会丢失,也可以回到最后提交的版本
    注:如果将hard改为soft,是将此版本回退到暂存区,它有两个作用
           ① 更改commit的提交注释
           ② 减少提交记录(场景:A文件功能完成并提交,正在开发B文件时,需要更改A的bug)

6. git reset 和 git revert的区别

  • git reset 是回滚到对应的commit-id,相当于是删除了commit-id以后的所有的提交,并且不会产生新的commit-id记录,如果要推送到远程服务器的话,需要强制推送-f

  • git revert 是反做撤销其中的commit-id,然后重新生成一个commit-id。本身不会对其他的提交commit-id产生影响,如果要推送到远程服务器的话,就是普通的操作git push就好了

二、git分支
1. 创建/切换分支
    git branch                        产看所有分支
    git branch 新分支名        创建新分支
    git checkout 分支名        切换分支
2. 将分支合并到主分支
    ① git branch master  
    ② git merge 新分支        合并分支
3. 删除分支
    git branch -d 分支名
4. 合并冲突问题(需要手动解决冲突)
    出现该问题是因为在当前分支与其他分支都修改了相同文件导致的,需要手动解决冲突,解决
    后需要重新提交代码
     

三、远程仓库
首先需要创建远程仓库,以github为例

1. 添加仓库地址
  与远程仓库建立连接
        - remote:远程的意思    git remote add origin 仓库地址   
        - add:添加
        - origin:是一个变量名(就是指代后面一长串的地址)
    git remote -v                             查看建立的远程仓库
    git remote remove origin          删除与远程仓库建立的连接
2. 推送远程仓库
    git push origin master              将master分支推到远端

注:如果当前分支与多个主机存在追踪关系,则可以使用-u选项指定一个默认主机,这样后面就可以不加任何参数使用git push。
3. 拉取代码
    git pull    场景:当A和B克隆的是同一套代码,B编写代码推送至远端,A后提交会推送失败,需                     要先git pull
注:git push之前最好先git pull,拉取最新代码

不同人修改不同文件不会有冲突问题,只需git pull即可
不同人修改相同文件才有可能有冲突,需要手动解决冲突

4. 创建新分支并推送远端
    git checkout master
    git pull
    git checkout -b 新分支名
    git push origin 新分支名
    git branch --set-upstream-to=origin/新分支名
    git pull(出现Already up to data表示创建成功)
5. 其他人切换另一个人创建的新分支
    git pull origin 新分支名
    git checkout 新分支名
6. 删除远程分支
    git push origin :远程分支名

四、vscode集成Git

VSCode内置版本控制机制,并自带对Git和Github的支持,你也可以安装插件以支持其他控制软件,如SVN(需要先安装 SVN )等。

  1. 初始化

     

  2. 可视化界面管理项目 

 

六. gitignore

在一些项目中,我们不想让本地仓库的所有文件都上传到远程仓库中,而是有选择的上传,比如:一些依赖文件(node_modules下的依赖)、bin 目录下的文件、测试文件等。一方面将一些依赖、测试文件都上传到远程传输量很大,另一方面,一些文件对于你这边是可用的,在另一个人那可能就不可用了,比如:本地配置文件。

  • 空行不匹配任何文件;

  • 如果本地仓库文件已被跟踪,那么即使在 .gitignore 中设置了忽略,也不起作用。

  • .gitignore 文件也会被上传的到远程仓库,所以,同一个仓库的人可以使用同一个.gitignore 文件。

# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
# dependencies
# #开头的便是注释

# 忽略文件和目录
/node_modules
/.pnp
.pnp.js

# testing
/coverage

# production
/build

# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local

# 使用通配符
npm-debug.log*
yarn-debug.log*
yarn-error.log*   

七、一些连续命令
1. 提交代码
    git add .
    git commit -m "描述信息"
    git push origin 分支名

2. 切换分支
    git chectout 分支名

3. 拉取代码
    git clone '仓库地址'
    git pull

4. 创建新分支(基于任意分支)
    git checkout 任意分支名
    git pull
    git checkout -b 新分支名
    git branch --set-upstream-to=origin/新分支名
    git pull(出现Already up to data表示创建成功)

5. 把主分支代码合并到子分支上
    git checkout master
    git pull
    git checkout 子分支名
    git merge master
    git add .
    git commit -m "描述文字"
    git push
    git pull

6. 把a分支代码合并到b分支上
    git checkout a分支名
    git pull
    git checkout b分支名
    git merge a分支名
    git add .
    git commit -m "描述文字"
    git push
    git pull

七、命令总览

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值