git基础命令---初始化仓库

=====git初始化仓库=======
git init  初始化仓库语句
$ git init
Initialized empty Git repository in E:/402/githome/.git/
这个仓库是干什么的呢?存代码还是存什么的呢?
git仓库:版本管理仓库,实现版本管理,所以建立仓库目的是存版本(提交点)。
接下来,最终做一件事情,产生提交点,存到仓库中。
从仓库看到提交点。
-------------基础命令----------------
练习:
查看修改状态            git status
添加修改到暂存区           git add   重要
提交到本地仓库            git commit  重要
查看提交日志            git log

了解:
版本回退(了解即可)    git reset head –-hard commitId
查看删除提交信息        git reflog
添加文件到忽略列表         在.gitignore中配置
----->---->---->------
怎么查看git仓库的版本信息呢?
$ git log
fatal: your current branch 'master' does not have any commits yet

Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ touch a.txt
创建出来了一个a.txt ,在磁盘上的确有了,但是并没有在仓库形成版本!!!
那它在哪呢?Git里面把这个刚创建的文件和修改后的文件,都放在一个叫做工作区的空间内!
Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ git status
On branch master

No commits yet

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        a.txt

nothing added to commit but untracked files present (use "git add" to track)
# git status之后 因为 a.txt在工作区 所以是红色。
Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ git add a.txt
# git add 指定文件   把指定文件从工作区添加到了暂存区 
Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ git status
On branch master

No commits yet

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)
        new file:   a.txt
# git status 查看 发现 a.txt 是绿色的 说明已经到了暂存区
$ git log
fatal: your current branch 'master' does not have any commits yet
# 查看版本提交信息 还没有呢 因为仅仅到了暂存区。

# git commit -m '提示信息'    把暂存区数据 生成一个版本,提交到仓库。告诉别人 你干了啥
Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ git commit -m 'master create a.txt'
[master (root-commit) 0b4b354] master create a.txt
 1 file changed, 1 insertion(+)
 create mode 100644 a.txt
 上面是提交过程 

Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ git status
# 查看状态  的确文件从暂存状态消失了
On branch master
nothing to commit, working tree clean

Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
# 查看 提交版本的信息  
$ git log
#  多了一个提交版本信息   提交id  作者  日期  做了什么事
commit 0b4b354089fc7fa45718bfe6245e0d4e3f163ac0 (HEAD -> master)
Author: yoyoba <[email protected]>
Date:   Thu Dec 15 15:02:01 2022 +0800

    master create a.txt


# 创建了一个b.txt文件 
Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ touch b.txt
# 添加到暂存区
Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ git add .
# 形成提交点 提交到本地仓库
Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ git commit -m 'master 创建了一个b.txt文件'
[master 23625fd] master 创建了一个b.txt文件
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 b.txt
# 查看提交 日志   最新提交在上面
Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ git log
commit 23625fdc9f253538ffa71c3cf05624e994e6a03d (HEAD -> master)
Author: yoyoba <[email protected]>
Date:   Thu Dec 15 15:09:49 2022 +0800

    master 创建了一个b.txt文件

commit 0b4b354089fc7fa45718bfe6245e0d4e3f163ac0
Author: yoyoba <[email protected]>
Date:   Thu Dec 15 15:02:01 2022 +0800

    master create a.txt
=======扩展两个内容=====
忽略文件
   git add .
     是不是会把所有的代码都放到暂存区。
   开发  我们写很多代码,本地测试。
          java文件,测试之后会生成.class文件
             
   像这种 .class文件 我们就不希望提交到仓库里面形成版本。
   这种文件就是要忽略的文件。
   git有一种 管理忽略文件的文件 
   叫 .gitignore
       里面配上对应的 忽略文件的匹配规则即可 
       *.class 
  手动创建一个文件
        .gitignore 点开头文件 打开 里面加上 *.class 
 # 创建了一个 java文件   
Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ touch HelloWorld.java
# 编译 生成了.class文件  
Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ javac HelloWorld.java
# 运行了 
Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ java HelloWorld
wula~~
# 查看 状态  class java都在工作区 
Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ git status
On branch master
Untracked files:
  (use "git add <file>..." to include in what will be committed)
        HelloWorld.class
        HelloWorld.java

nothing added to commit but untracked files present (use "git add" to track)

## 创建了一个忽略文件 文件中有个规则 *.class 代表 git要忽略 .class文件 
## 查看状态  class文件的确被忽略了!!
Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ git status
On branch master
Untracked files:
  (use "git add <file>..." to include in what will be committed)
        .gitignore
        HelloWorld.java

nothing added to commit but untracked files present (use "git add" to track)
#  所有工作区文件 提交到暂存区
Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ git add .

Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ git status
# 忽略的文件没有权力进入的暂存区
On branch master
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)
        new file:   .gitignore
        new file:   HelloWorld.java


Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
# 提交了 
$ git commit -m 'master 演示忽略文件'
[master ab36ec9] master 演示忽略文件
 2 files changed, 7 insertions(+)
 create mode 100644 .gitignore
 create mode 100644 HelloWorld.java

Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
# 查看提交信息 的确有提交点
$ git log
commit ab36ec9c9f8499d72fc3520acd010db58dcc5ce5 (HEAD -> master)
Author: yoyoba <[email protected]>
Date:   Thu Dec 15 15:22:43 2022 +0800

    master 演示忽略文件

commit 23625fdc9f253538ffa71c3cf05624e994e6a03d
Author: yoyoba <[email protected]>
Date:   Thu Dec 15 15:09:49 2022 +0800

    master 创建了一个b.txt文件

commit 0b4b354089fc7fa45718bfe6245e0d4e3f163ac0
Author: yoyoba <[email protected]>
Date:   Thu Dec 15 15:02:01 2022 +0800

    master create a.txt

=========提交点越多 查看起来是方便还是不方便===========
有没有简短一点展示 提交点的方式呢?
Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
# 下面这个命令 的确能简化展示效果 更清晰命令
# 但是 命令 过于复杂了  我记不住!!!!!
$ git log --pretty=oneline --all --graph --abbrev-commit
* ab36ec9 (HEAD -> master) master 演示忽略文件
* 23625fd master 创建了一个b.txt文件
* 0b4b354 master create a.txt
# 上午的时候 起别名了
===讲义中3.1.3 ==
Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ git-log
* ab36ec9 (HEAD -> master) master 演示忽略文件
* 23625fd master 创建了一个b.txt文件
* 0b4b354 master create a.txt
展示多个提交点
提交id变得简单了 只留了关键信息   每一个提交点 占一行 

==============慎用的功能 (谨慎使用)=======
提交点 代表不同时期提交的代码情况!!!!形成了版本信息。

# 提交了第三个提交点之后  程序出现bug了。。。。。atm一直吐钱。。。。
# 版本要回退了!!!(更新新版本,,卡bug...回退回去。。。)

#  git reset --hard 回滚版本号 

Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ git reset --hard 23625fd
HEAD is now at 23625fd master 创建了一个b.txt文件

Yoyo-ba@yoyoba MINGW64 /e/402/githome (master)
$ git-log
* 23625fd (HEAD -> master) master 创建了一个b.txt文件
* 0b4b354 master create a.txt

#演示回退版本   查看历史版本
$ git reflog   

    
 

猜你喜欢

转载自blog.csdn.net/qq_46020806/article/details/130548393