一.git工作流程
工作流程如下:
1.从远程仓库中克隆代码到本地仓库
2.从本地仓库中checkout代码然后进行代码修改
3.在提交前先将代码提交到暂存区
4.提交到本地仓库。本地仓库中保存修改的各个历史版本
5.修改完成后,需要和团队成员共享代码时,将代码push到远程仓库

在这里插入图片描述
二.常用Git代码托管服务有GitHub,码云,GitLab
三.操作命令

  1. 设置用户信息
    1.1 设置用户名
    git config --global user.name codingxc
    1.2 设置邮箱
    git config --global user.email codingxc@qq.com 全局
    git config --local user.email codingxc@qq.com 局部

  2. 查看配置信息
    git config --list
    git config user.name

通过上面的命令设置的信息会保存在C:\Users\用户名.gitconfig文件中

  1. 获取Git仓库
    3.1 在本地初始化一个Git仓库
    3.1.1在电脑的任意位置创建一个空目录(例如repo1)作为我们的本地Git仓库
    3.1.2进入这个目录中,点击右键打开Git bash窗口
    3.1.3 执行命令git init
    3.1.4如果在当前目录中看到.git文件夹(此文件夹为隐藏文件夹)则说明Git仓库创建成功
    在这里插入图片描述3.2 从远程仓库克隆
    3.2.1获取远程仓库地址
    在这里插入图片描述
    3.2.2通过Git提供的命令从远程仓库进行克隆,将远程仓库克隆到本地
    命令形式为:git clone 远程Git仓库地址

  2. 工作目录,暂存目录,版本库的概念
    4.1 版本库:前面看到的.git隐藏文件夹就是版本库,版本库中存储了很多配置信息、日志信息和文件版本信息等
    4.2 工作目录(工作区):包含.git文件夹的目录就是工作目录,主要用于存放开发的代码
    4.3 暂存区:.git文件夹中有很多文件,其中有一个index文件就是暂存区,也可以叫做stage。暂存区是一个临时保存修改文件的地方
    在这里插入图片描述

  3. Git工作目录下的文件存在两种状态:
    5.1 untracked 未跟踪(未被纳入版本控制)
    5.2 tracked 已跟踪(被纳入版本控制)
    Unmodified 未修改状态
    Modified 已修改状态
    Staged 已暂存状态
    这些文件的状态会随着我们执行Git的命令发生变化

  4. 常用本地仓库命令
    6.1查看文件状态
    git status
    git status –s 使输出信息更加简洁

    6.2将未跟踪的文件加入暂存区
    git add 文件名

    6.3将暂存区的文件取消暂存
    git reset 文件名

    6.4 将暂存区的文件修改提交到本地仓库
    git commit 文件名
    git commit -m “init haha.txt”将暂存区里面所有的文件都提交了,并且写入日志信息

    6.5删除工作区的文件
    git rm 文件名
    需要提交到本地仓库才是真正的删除
    git commit 文件名

    6.6将文件添加至忽略列表
    一般我们总会有些文件无需纳入Git 的管理,也不希望它们总出现在未跟踪文件列表。 通常都是些自动生成的文件,比如日志文件,或者编译过程中创建的临时文件等。 在这种情况下,我们可以在工作目录中创建一个名为 .gitignore 的文件(文件名称固定),列出要忽略的文件模式。
    创建.文件
    touch .gitignore
    写入*.class
    忽略.class结尾的文件

  5. 常用远程仓库命令
    7.1查看远程仓库
    获取与克隆的本地仓库连接的远程仓库
    git remote
    默认是 origin

    获取与克隆的本地仓库连接的远程仓库详细地址
    git remote -v
    git remote show origin(更详细)

    7.2添加本地自己创建的创库与远程仓库的关联关系
    git remote add origin 仓库路径

    7.3从远程仓库克隆仓库
    git clone 仓库路径

    7.4移除本地与远程仓库的关联关系
    git remote rm myremote

    7.5从远程仓库抓取文件 (以二进制文件的方式存放)
    git fetch (抓取整个仓库)
    git fetch origin 分支名字 (抓取某个分支)

    将二进制文件合并
    git merge origin/master (合并maser分支过来)

    7.6从远程仓库拉取文件 :自动抓取和合并
    git pull origin master (拉取分支)

    拉取不成功
    如果当前本地仓库不是从远程仓库克隆,而是本地创建的仓库,并且仓库中存在文件,此时再从远程仓库拉取文件的时候会报错(fatal: refusing to merge unrelated histories ),解决此问题可以在git pull命令后加入参数--allow-unrelated-histories

git pull origin master --allow-unrelated-histories

7.7本地代码推送到远程仓库
git push origin master
8. 常用分支操作命令
8.1查看分支
列出所有本地分支
git branch
列出所有远程分支
git branch -r
列出所有本地分支和远程分支
git branch -a

8.2创建本地分支
git branch b1

8.3切换分支
git checkout b1

8.4本地分支推送到远程仓库
git push origin b1

8.5合并分支
git merge b1

有时候合并操作不会如此顺利。 如果你在两个不同的分支中,对同一个文件的同一个部分进行了不同的修改,Git 就没办法合并它们,同时会提示文件冲突。此时需要我们打开冲突的文件并修复冲突内容,最后执行git add命令来标识冲突已解决

8.6删除本地分支
git branch -d, b1
强制删除本地分支(这个分支里面有分支没有合并或者没有提交的)
git branch -D, b1

8.7删除远程分支
git push origin -d b1

9.常用标签命令
9.1新建v1.0标签
git tag v1.0
9.2查看标签
git tag
9.3推送标签
git push origin v1.0
9.4检出标签v1.0到新分支a1
git checkout -b a1 v1.0
9.4删除本地标签v1.0
git tag -d v1.0
9.5删除远程标签v1.0
git push origin :refs/tags/v1.0

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐