gitwen

Git分布式版本控制工具-操作指令

2022-02-25  本文已影响0人  石头耳东

零、本文纲要

一、Git工作流程图
二、Git基础操作指令
三、Git分支指令
四、Git远程仓库
tips:Ctrl+F快速跳转所需内容阅读

一、Git工作流程图

image.png
  1. clone(克隆): 从远程仓库中克隆代码到本地仓库;
  2. checkout (检出):从本地仓库中检出一个仓库分支然后进行修订;
  3. add(添加): 在提交前先将代码提交到暂存区;
  4. commit(提交): 提交到本地仓库。本地仓库中保存修改的各个历史版本;
  5. fetch (抓取) : 从远程库,抓取到本地仓库,不进行任何的合并动作,一般操作比较少;
  6. pull (拉取) : 从远程库拉到本地库,自动进行合并(merge),然后放到到工作区,相当于fetch+merge;
  7. push(推送) : 修改完成后,需要和团队成员共享代码时,将代码推送到远程仓库。

二、Git基础操作指令

  1. git init(初始化当前目录为1个Git仓库)
#Git bash窗口执行初始化指令
git init
image.png
  1. git add (工作区 --> 暂存区)
    命令形式:git add 单个文件名|通配符
git add file01.txt
git add .
  1. git commit (暂存区 --> 本地仓库)
    命令形式:git commit -m '注释内容'
git commit -m 'add file01.txt'
  1. git status(查看的修改的状态-暂存区、工作区)
git status
  1. git log(查看提交日志)
    命令形式:git log [option]
    常用option:
    --all 显示所有分支;
    --pretty=oneline 将提交信息显示为一行;
    --abbrev-commit 使得输出的commitId更简短;
    --graph 以图的形式显示。
git log --pretty=oneline --all --graph --abbrev-commit

tips:设置复杂指令别名
①打开用户目录,创建 .bashrc 文件

touch ~/.bashrc

②在 .bashrc 文件中输入以下内容

#用于输出git提交日志
alias git-log='git log --pretty=oneline --all --graph --abbrev-commit'

#用于输出当前目录所有文件及基本信息
alias ll='ls -al'

③打开gitBash,执行 source ~/.bashrc

source ~/.bashrc
  1. git reset(版本回退)
    命令形式:git reset --hard commitID
    git log、git reflog可以查看commitID
  2. .gitignore文件(文件忽略列表)
    在工作目录中创建一个名为 .gitignore 的文件(文件名称固定),列出要忽略的文件模式。
# no .a files
*.a
# but do track lib.a, even though you're ignoring .a files above
!lib.a
# only ignore the TODO file in the current directory, not subdir/TODO
/TODO
# ignore all files in the build/ directory
build/
# ignore doc/notes.txt, but not doc/server/arch.txt
doc/*.txt
# ignore all .pdf files in the doc/ directory
doc/**/*.pdf

三、Git分支指令

  1. 查看本地分支
    命令:git branch
git branch
  1. 创建本地分支
    命令:git branch 分支名
git branch dev01
  1. 切换分支(checkout)
    命令:git checkout 分支名
git checkout dev01

也可以实现:创建并切换
命令:git checkout -b 分支名

git checkout -b dev02
  1. 合并分支(merge)
    命令:git merge 分支名称
    一个分支上的提交可以合并到另一个分支,记得切换到最后合并要用的分支。
#一个分支上的提交可以合并到另一个分支
git checkout master
git merge dev01
  1. 删除分支
    命令:git branch -d local_branch_name 删除分支时,需要做各种检查
    git branch -D local_branch_name 不做任何检查,强制删除
    不能删除当前分支,只能删除其他分支。
git branch -d dev01
# -D与-d的区别是:
#-D强制删除dev01如果有内容commit也会被删除
#-d删除会提醒先去merge
git branch -D dev01

四、Git远程仓库

  1. 添加远程仓库
    命令: git remote add <远端名称> <仓库路径>
    远端名称,默认是origin。
git remote add origin git@github.com***/git_test.git
  1. 查看远程仓库
    命令:git remote
git remote
  1. 推送到远程仓库
    命令:git push [-f] [--set-upstream] [远端名称 [本地分支名][:远端分支名] ]
    -f 表示强制覆盖
    --set-upstream 推送到远端的同时并且建立起和远端分支的关联关系
git push --set-upstream origin master:master
#两条指令意思一样,本地分支与远端分支名相同,后面内容可省略
git push --set-upstream origin master

如果远程分支名和本地分支名称相同,则可以只写本地分支
如果当前分支已经和远端分支关联,则可以省略分支名和远端名

#已经关联本地与远端分支,则可以直接 git push
git push
  1. 本地分支与远程分支的关联关系
    命令:git branch -vv
git branch -vv
  1. 从远程仓库克隆
    命令: git clone <仓库路径> [本地目录名]
git clone http://***/git_test.git git_test_01
#下面指令则会将本地目录默认命名为git_test
git clone http://***/git_test.git
  1. 从远程仓库中抓取和拉取
    抓取 命令:git fetch [remote name] [branch name]
    抓取指令就是将仓库里的更新都抓取到本地,不会进行合并;
    注意:如果不指定远端名称和分支名,则抓取所有分支。
    拉取 命令:git pull [remote name] [branch name]
    拉取指令就是将远端仓库的修改拉到本地并自动进行合并,等同于fetch+merge。
    如果不指定远端名称和分支名,则抓取所有并更新当前分支。

五、结尾

以上即为Git基础相关内容,感谢阅读。

上一篇下一篇

猜你喜欢

热点阅读