使用git进行项目版本管理

概念

Git是一个免费的开源 分布式版本控制系统,旨在快速高效地处理从小型到大型项目的所有内容。
Git易于学习, 占地面积小,具有闪电般的快速性能。它具有诸如Subversion,CVS,Perforce和ClearCase之类的SCM工具,具有廉价的本地分支,便捷的暂存区域和 多个工作流等功能

git获取

  • git官网地址:https://git-scm.com/

  • 如果本地下载过git,需要更新到最新版本
    git clone https://github.com/git/git

  • 安装完查看git版本git --version

liouwb@liouwbdeMacBook-Pro ~ % git --version
git version 2.23.0

仓库配置(gitconfig)

配置文件位置
  1. /etc/gitconfig 系统配置文件需要管理员权限
  2. ~/.gitconfig 用户配置文件(windows一般情况下是在 C:\Users$USER 下.gitconfig
  3. git仓库的config 文件(即 .git/config)
可以通过打开以上目录文件来查看配置
  • 也可以通过命令$ git config --list --show-origin 查看文件位置
  • git config --list 查看git所有的配置
修改配置文件
  • 正常开发过程中,我们都会设置用户名和邮箱
git config --global user.name "liouwb"
git config --global user.email liouwb@163.com

git仓库

  • git远程仓库和本地仓库的关系
    在这里插入图片描述
1.把本地文件变成git仓库
  • git init
    git init 把本地非git项目,初始化为git仓库,在本地文件执行git init命令,本地就会多出一个.git的目录

  • git add
    git add 文件 把本地新增或者修改的文件添加到本地仓库

# 添加单个文件到本地仓库
git add learn.txt  

# 添加本地所有文件到本地仓库
git add .
  • git commit
    git commit git add的文件提交到本地仓库
# commit 后面-m 参数 添加提交说明
git commit -m "提交的说明"
2.git获取远程仓库
  • git clone
    git clone从远程仓库(github gitlab gitee)上拉取远程仓库代码到本地,并建立联系
git clone url(远程分支地址)

git常用命令
  • git status
    查看本地仓库状态
liouwb@liouwbdeMacBook-Pro web-demo % git status
On branch master
Your branch is up to date with 'origin/master'.

Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        deleted:    .mvn/wrapper/maven-wrapper.properties

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
        modified:   src/main/java/com/liouxb/web/demo/service/impl/TestServiceImpl.java
  • git status -s
liouwb@liouwbdeMacBook-Pro web-demo % git status -s
D  .mvn/wrapper/maven-wrapper.properties
 M src/main/java/com/liouxb/web/demo/service/impl/TestServiceImpl.java
  • git diff
    difference 显示改动
# 对比文件修改记录
git diff 文件全路径

# 比对已暂存文件与最后一次提交的文件差异
git diff --staged

# 查看已经暂存起来的变化(--staged 和 --cached 是同义词)
git diff --cached 
  • git stash
    查看本地仓库状态

  • git push
    把本地仓库代码推送到远程仓库git push origin(远程分支的名称,默认是origin也可以设置为其他名称) 分支名称

远程仓库设置
  • git remote -v
    查看远程仓库信息
liouwb@192 web-demo % git remote -v
origin  git@gitee.com:liouwb/web-demo.git (fetch)
origin  git@gitee.com:liouwb/web-demo.git (push)
liouwb@192 web-demo % 
  • git remote remove 远程仓库名称
    解除与远程仓库的关联

  • git remote add 远程仓库名(默认origin) 远程仓库地址
    与远程仓库建立联系(可以设置多个远程仓库)

git常用命令

# 解除本地分支与远程分支的关系
git branch -r -d origin/branch-name  

# 删除本地分支(-D强制删除)
git branch -d branch-name

# 删除远程分支
git push origin : branch-name        

# 从远程分支更新代码到本地
git pull origin master               

# 把本地分支推送到远程
git push origin dev_liubin           

# 以远程分支为镜像创建本地分支
git checkout -b reloan origin/reloan   

# 合并分支,并记录
git merge --no-ff branch      

#  合并分支,产生一个新的commit-id
git merge --squash branch    

# 合并分支不提交merge请求,可以合并后结果代码
git merge -no-commit      

# 可以看到删除分支情况 
git remote show origin     

# 解决远程分支删除之后,git branch -r依然能看到
git remote prune origin   

# 撤销当前未提交操作
git reset --   

# 把本地仓库所有分支及记录推到新的远程仓库(仓库迁移)
git push --mirror url   

# 删除远程对应仓库
git remote remove origin   

# 添加远程仓库地址
git remote add origin newurl  

# 放弃cherry-pick操作
git cherry-pick --abort

gitignore 不生效

# 把之前提交的现在添加到gitignore文件的排除
$ git rm -f --cached .

# 提交
$ git add .

$ git commit -m "注释"

git 仓库迁移

git clone --bare http://域名/分组/仓库名称.git

cd 仓库名称.git

git push --mirror http://新域名/新分组/新仓库名称.git
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值