Git本地仓库基本命令

  • Git结构
  1. 工作区(workspace):操作文件
    2.暂存区(index):临时存储,存放小阶段的成果,版本库的一部分
  2. 本地仓库(Repository):存放版本记录,一个版本会完成一个完整的功能,一个版本就是一个更新
    4.记录的版本可以查看,回退
    5.暂存区的版本一旦提交就没有了(保存到仓库里面去了)
  • Git安装
    windows安装:https://git-scm.com/download/win
    linux安装:
# 在Linux系统上面安装
sudo apt-get install git

# 查看是否安装成功
git --version

# 查看帮助文档
git --help

创建本地版本库

  • 使用git init 创建一个版本库
# Git使用git init命令初始化一个
(py3env) bd@DF:~/git_workspace$ git init  # 初始化
已初始化空的 Git 仓库于 /home/bd/git_workspace/.git/
(py3env) bd@DF:~/git_workspace$ ls
(py3env) bd@DF:~/git_workspace$ la
.git

使用指定目录作为Git仓库、

git inti 目标文件夹

-配置信息

# 针对本项目配置个人信息
(py3env) bd@DF:~/git_workspace$ git config user.name 'ceilyang'
(py3env) bd@DF:~/git_workspace$ git config user.email '[email protected]'
# 配置信息会保存在项目的.git/config文件中

# 全局配置个人信息
git config --gloal user.name 'ceilyang'
git config --gloal user.email '[email protected]'
# 全局配置保存在家目录

提交

(py3env) bd@DF:~/git_workspace$ python test.py
hello word
(py3env) bd@DF:~/git_workspace$ git stuate
git:'stuate' 不是一个 git 命令。参见 'git --help'。

最相似的命令是
        stage
(py3env) bd@DF:~/git_workspace$ git staute
git:'staute' 不是一个 git 命令。参见 'git --help'。

最相似的命令是
        status
(py3env) bd@DF:~/git_workspace$ git status
位于分支 master

尚无提交

未跟踪的文件:
  (使用 "git add <文件>..." 以包含要提交的内容)

        test.py

提交为空,但是存在尚未跟踪的文件(使用 "git add" 建立跟踪)
(py3env) bd@DF:~/git_workspace$ git status
位于分支 master

尚无提交

未跟踪的文件:
  (使用 "git add <文件>..." 以包含要提交的内容)

        test.py

提交为空,但是存在尚未跟踪的文件(使用 "git add" 建立跟踪)
(py3env) bd@DF:~/git_workspace$ git add test.py
(py3env) bd@DF:~/git_workspace$ git status
位于分支 master

尚无提交

要提交的变更:
  (使用 "git rm --cached <文件>..." 以取消暂存)

        新文件:   test.py

(py3env) bd@DF:~/git_workspace$ git commit -m '项目初始化v1.0.0'
[master (根提交) c8209b2] 项目初始化v1.0.0
 1 file changed, 1 insertion(+)
 create mode 100644 test.py
(py3env) bd@DF:~/git_workspace$ git status
位于分支 master
无文件要提交,干净的工作区
(py3env) bd@DF:~/git_workspace$ git log
commit c8209b23df9a438f6251f145890196800e9b35e0 (HEAD -> master)
Author: ceilyang <ceilyang@maqu.com>
Date:   Wed Oct 13 20:54:51 2021 +0800

    项目初始化v1.0.0

  • 提交本地仓库
提交到工作区
git add.  

提交到本地仓库
git commit -m "提示信息"
  • 日志
git log  # 查看历史记录
git reflog # 查看所有分支更加强大
  • 返回版本
git reset [--soft | --mixed | --hard] [HEAD]

分支

就像有主干(master),有分支

在版本控制中同时推进多个任务,给每个任务创造单独的分支

使用分支意味程序员可以把自己的工作从主线上面分离开来,开发自己的任务,小功能,不会主线的运行

优点:

  • 提升开发效率
  • 一个分支开发失败,不会影响其他分支

列出分支

git branch

(py3env) bd@DF:~/git_workspace$ git branch
* master
(py3env) bd@DF:~/git_workspace$ ls
test.py
(py3env) bd@DF:~/git_workspace$ git branch -c
fatal: 必须提供分支名
(py3env) bd@DF:~/git_workspace$ git branch -v
* master 4e5ed31 项目初始化补丁.v1.0.1

创建分支

git branch 分支名

(py3env) bd@DF:~/git_workspace$ git branch hot-fix
(py3env) bd@DF:~/git_workspace$ git branch -v
  hot-fix 4e5ed31 项目初始化补丁.v1.0.1
* master  4e5ed31 项目初始化补丁.v1.0.1

切换分支

git checkout

(py3env) bd@DF:~/git_workspace$ git checkout hot-fix
切换到分支 'hot-fix'
(py3env) bd@DF:~/git_workspace$ git branch -v
* hot-fix 4e5ed31 项目初始化补丁.v1.0.1
  master  4e5ed31 项目初始化补丁.v1.0.1

合并分支

git merge 指定分支

合并冲突

冲突发生原因:两个分支操作了同一个对象(文件)做了不同的修改,Git无法决定使用那个一个,人为决定新的版本内容,手动篡改一下

删除分支

(py3env) bd@DF:~/git_workspace$ git branch
* hot-fix
  master
(py3env) bd@DF:~/git_workspace$ git checkout master
切换到分支 'master'
(py3env) bd@DF:~/git_workspace$ git branch -d hot-fix
已删除分支 hot-fix(曾为 4e5ed31)。

猜你喜欢

转载自blog.csdn.net/qq_53075298/article/details/120804074
今日推荐