Experiment one: Git code version management

Purpose:

1) understand the core mechanism of the distributed distributed version control system;

2) git master basic instructions and a branch management instruction;

 

Experiment:

1) install git

2) the initial configuration git, git init git status command

3) master git log, git add, git diff command

4) master git tag git branch, git commit command

5) master git revert command

 

Experimental records:

1) install Git

Download the Windows version of Git, in accordance with the guidance of the experiment after installation, you can find a shortcut on the desktop right-click mouse

2) the initial configuration Git

  Initial Configuration Git

Before you start using Git, you need to configure Git. Run each of the following line at the command-line tool, ensure that all options have been configured.

# Set your user name Git

git config --global user.name "<Your-Full-Name>"

# Set your Git-mail

git config --global user.email "<your-email-address>"

# Git ensure output color-coded content

git config --global color.ui auto

Comparison shows the original state #

git config --global merge.conflictstyle diff3

git config --list

 

 

 

   And code editor Git

    Atom Editor settings

      git config --global core.editor "atom --wait"

    Sublime Text Settings

      git config --global core.editor "'C:\Program Files\Sublime Text 3\sublime_text.exe' -n -w"

      注意C:\Program Files\Sublime Text 3\sublime_text.exe 为你安装后sublime的地址

    VSCode 设置

      git config --global core.editor "code --wait"

 

 

 3)从头创建仓库

创建的过程中可能涉及如下命令

  • ls - 用来列出文件和目录 

  • mkdir - 用来新建目录

  • cd - 用来更改目录

  • rm - 用来删除文件和目录

  • pwd -列出当前目录

  创建一个目录,叫做 se2020-git-course,在该目录中,创建另一个目录,叫做 new-git-project,使用 cd 命令移到 new-git-project 目录下。

  可在终端上运行以下命令:- mkdir -p se2020-git-course/new-git-project && cd $_

 

 

   git init

 

  克隆现有仓库

 

 

 

 

  git stuas

 

 

4)git log

  git log命令

 

   git log --ontime

 

 

  git log --p

  git log 命令具有一个可用来显示对文件作出实际更改的选项。该选项是 --patch,可以简写为 -p:

  $ git log -p

 

  git log --stat

  The git log 命令有一个选项可以用来显示 commit 中更改的文件以及添加或删除的行数。

 

 

  git show

  git show 命令将仅显示一个 commit。因此,如果你看不到任何其他 commit,不要惊慌。它只显示一个 commit。git show 命令的输出和 git log -p 命令的完全一样。因此默认情况下,git show 会显示:

  commit

  作者

  日期

  commit 消息

  补丁信息

 

 

 5)git add& git commit&git diff


  创建文件夹和文件

   首先,创建一个叫做 index.html 的文件,并添加一些起始代码:

 

  尽管尚未对 git 执行任何特殊操作,但是它已经在观察这个目录(因为它是 git 项目),并且知道我们创建了几个新的文件。git status 命令的输出同样十分简洁地告诉我们 git 没有跟踪这些文件。

 

 

  暂存文件

  在终端上运行以下命令,使用 git add 将 index.html 添加到暂存区:

  $ git add index.html


  提交commit

  index.html 文件已暂存。我们再暂存另外两个文件。现在我们可以运行以下命令:

  $ git add css/app.css js/app.js

  或者使用 git add .   



 

 

  git diff 和 gitingnore

   要在 git 中提交 commit,你需要使用 git commit 命令,但是先别运行这条命令。运行这条命令将会打开你在第一节课配置的代码编辑器。

 

 

 6)标签、分支

  git tag标签

  进入,前面建立的 new-git-project 项目文件夹中,

  该项目到目前为止的 git log 输出结果:

 

 

 

 

  git tag 命令、验证和删除

  可以通过输入 -d 选项 (表示 delete 删除!)加上标签名称来删除 git 标签:

  $ git tag -d v1.0

 

 

 

 

  向以前的commit添加标签

  运行 git tag -a v1.0 将为最近的 commit 添加标签。但是如果你想向仓库中很久之前的 Commit 添加标签呢?

  只需提供要添加标签的 commit 的 SHA 即可!

  先查询历史SHA git log --oneline,查找已经commit  的SHA

 

7)合并

  

   主题分支(例如 sidebar)的作用是让你做出不影响 master 分支的更改。当你在主题分支上做出更改后,如果觉得不想要该分支上的更改,则可以删掉该分支,或者你决定要保留更改,则可以将该分支上的更改与其他分支上的更改合并。

  将分支组合到一起称为合并。

  git 可以自动将不同分支上的更改合并到一起。这种分支和合并功能正是 git 的强大之处!你可以在分支上做出小的或大的更改,然后使用 git 合并这些更改。

  合并指令

 

 

 

 

  合并冲突

 

 

 

 

8)撤销更改

  更改上一个commit消息

 

  向commit中添加忘记的文件

  还原commit

 

 

 

总结与体会

  本次的实验对于git有了一个初步的认识,虽然是验证性实验,但是对于巩固理论学习到的相关知识具有很大帮助。在实验期间,我遇到了,默认编辑器设置失败的问题、建立仓库时master配置错误的问题。通过上网搜索、询问同学使得这些问题得以解决。在刚接触到一门崭新的开发工具时,可以在某些视频网站上搜索相关的教程观看,这样对于接触新的开发程序会有一个大体的熟知度。

思考

  分布式版本管理系统注重的是项目整体而不是单个文件或代码。对每个不同的本地用户来说在本地读取数据,可自行拥有全部版本不需要连接主机,不需要服务端,通过合并和信息追踪来实现版本控制,方便快速交流和发布。分布式的特点避免了集中式因为核心部分出错导致系统整体瘫痪的尴尬局面,易于后期的维护和迭代升级。从外实现了开发工程的模块化,使得部分功能能很好的替换、更改、添加、删除。

 

Guess you like

Origin www.cnblogs.com/alanandpython/p/12406762.html