zoukankan      html  css  js  c++  java
  • Git的学习使用记录

    前言

    Git的工作介绍:

    工作区:存放本地项目的地方

    暂存区:临时存放改动的地方

    git仓库:最终版本的放置

    Git工作流程:

    1.在工作区的目录添加,修改文件

    2.将需要进行版本管理的文件放入暂存区

    3.将暂存区的文件提交到git仓库

    Git的文件管理状态:

    1.已修改(modified)

    2.已暂存(staged)

    3.已提交(committed)

    4.未跟踪(untracked)(就是未放入暂存区的文件,放入暂存区的都被跟踪了)

    未跟踪的文件标红色,暂存区的文件是绿色

    1.在磁盘某处创建文件夹,作为仓库来存储git项目

    2.在新建的这个文件夹中右键,git bash here

    3.先初始化一下这个仓库文件夹

     $  git init

    就会生成一个隐藏的.git文件夹

    4.设置用户名和用户邮箱

    $  git config --global user.name 'xxxx'

    $  git config --global user.email 'xxx@xxx'

    5.创建文件/文件夹

    $  touch/mkdir filename

    6.删除本地文件

    $  rm filename

    7.删除git中暂存的文件

    $  git rm filename

    8.查看git文件夹已设置信息

    $  git config -l

    9.查看本地文件状态

    $  git status

    10.查看提交日志记录

    $  git log

    其中展示了

    (1)第一条commit的括号中显示的是:当前本地所处分支位置,远程操作对应的位置,最近一次commit的来源位置

    (2)提交者及时间

    (3)对此次提交的说明

    11.如果在文件在工作区修改了,已经提交到暂存区,git status之后会提示使用哪个覆盖哪个

    $  git add filename 是新文件覆盖旧文件

    $  git checkout --filename  是旧文件覆盖新文件

    12.执行带有--amend选项的commit提交命令,git就会“更正”最近一次的提交

    $  git commit --amend filename

    13. 上传当前项目所有内容到本地仓库暂存区

    $ git add .

    14.提交代码到本地仓库

    $ git commit -m "备注"

    15.拉取远程仓库代码,不然很有可能把远程仓库代码覆盖掉,特别是团队协作开发的时候要特别注意。第一次可以不用执行git pull,但团队开发时,推送代码(push)一定要先执行拉取代码(pull)【在拉取代码(pull)时,可能会遇到代码冲突(merge)的问题,遇到冲突先把冲突解决了在重新推送(push),特别是团队协作开发时,特别容易发生代码冲突。】

    $ git pull

    16.解决代码冲突

    $ git merge

    17.git 提交文件要提交3次,如图

     git add 把文件从工作区提交到stage(暂存区)

     git commit 把文件从stage(暂存区)提交到master(当前分支)

     git push 把文件从master(当前分支)提交到github

     18.关于已commit的文件撤销方法

    $ git reset HEAD^    (reset用于本地commit文件的撤销)

    $ git revert HEAD    (revert用于pushed到远程文件的撤销)

    19.关于强制切换当前所在分支位置

    $ git branch -f A B (强制从A位置切换到B位置)

    实际操作:

    1.在桌面新建一个空白文件夹来存放与项目相关的文件,并且右键git bash here

    2.初始化一下这个文件夹 git init

    3.clone一下github上存放此项目的地址 保持同步  git clone xxxxxx

    4.输入指令“ll”可以查看当前文件夹下的文件目录

    5.进入目录

    (1)创建新分支(此时用git branch是没有返回值的)

    --创建master分支:git checkout -b master

    --在这个分支下创建一个readme文件

    --提交任意一个文件(一般是readme):git commit  readme.md  (如果不commit,是无法新建分支的,此时再用git branch就可以看到分支了,此时可以新建分支)

    --把想要同步到github的分支通过指令:git push -u origin 分支名    同步到远程的github上

    (2)提交

    --在本地修改好文件之后,把文件(夹)push到github:先git add 再 git commit -m “备注” 最后 git push

    (3)在本地的其他分支

    在本地的其它分支似乎无法直接提交到远程(可能是我操作有误),需要将本地新的分支下写好的内容覆盖本地原分支的内容,完成本地内容的更新之后,再从本地的原分支提交给远程对应分支

    (感觉自己的这步操作绕弯子了,日后弄清楚了再改)

    关于覆盖的方式,有merge和rebase两种,目前我个人倾向于使用rebase

    merge构造网状交叉历史提交记录,rebase提供线性历史提交记录

    如图(参考了git的学习网站 https://learngitbranching.js.org/?locale=zh_CN

    参考文章地址:https://www.jianshu.com/p/de4126828048 

    https://www.cnblogs.com/tu-0718/p/10973045.html

  • 相关阅读:
    JAVA-JDBC
    如何优雅地拼SQL的in子句
    Groovy 语言尝鲜
    小而美的CNC机器
    GCode软件和资料
    基于PC的运动控制
    CAD/CAM软件
    工控硬件
    数控系统
    Visual Studio 2019 Community 版离线注册
  • 原文地址:https://www.cnblogs.com/RuiRuia/p/12213759.html
Copyright © 2011-2022 走看看