Git基本使用

Posted 1026164853qqcom

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git基本使用相关的知识,希望对你有一定的参考价值。

1、安装git  执行

$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"
因为Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址。

2、创建git库,最好是在空目录中

3、在空目录中执行git init 命令,即在该目录初始化了一个git仓库,使用 ls -ah 可以查看到目录下隐藏的.git文件

 

4、在git仓库中操作文件,如新增一个文件1.txt ,文件中输入内容, 此时在git目录中执行 git statue 命令,即可查看该仓库下文件的状态(已更新?  修改待提交? 新增待提交?)

 

5、git 上传至仓库,一共分两步,  1是add  2是commid    git add 1.txt   git commid -m “此次提交的内容介绍,方便以后自己或其他人查看”

git所在目录属于工作区,  执行完add的文件会放到版本库的暂存区,  git commit 之后文件才会被提交到分支(默认master)

git diff HEAD -- readme.txt命令可以查看工作区和版本库里面最新版本的区别:

git add 后面可以跟多个文件;  

 

6、查看完仓库中文件的状态后,发现有带待提交的文件时,  如果忘记了自己做过什么,可以查看有哪些代替交的内容  使用 git diffrent

wangjianqingdeMacBook-Air:LearnDemo wangjianqing$ git diff

diff --git a/LearnDemo/readMe.txt b/LearnDemo/readMe.txt

index 15ba924..00014e9 100644

--- a/LearnDemo/readMe.txt

+++ b/LearnDemo/readMe.txt

@@ -1,5 +1,4 @@

 today

 is

-not

 a

 beautifulday

7、学会了使用git提交新建的代码,提交修改的内容,那么提交的次数过多后,如何回滚,回滚时如何选择版本

使用git log  查看提交记录

wangjianqingdeMacBook-Air:LearnDemo wangjianqing$ git log

commit 5897448c4d24009e043a9129168c2d65c990431e (HEAD -> master)

Author: wangjianqing <1026164853@qq.com>

Date:   Tue Jul 23 18:51:22 2019 +0800

 

    second upload git

 

commit 910b43d7de6ff44c1f5d709baca056a5d32b6404

Author: wangjianqing <1026164853@qq.com>

Date:   Tue Jul 23 17:37:36 2019 +0800

 

    first upload git

如果查看时输出的内容过多,可以考虑后面追加 --pretty=oneline  如下:

wangjianqingdeMacBook-Air:LearnDemo wangjianqing$ git log --pretty=oneline

5897448c4d24009e043a9129168c2d65c990431e (HEAD -> master) second upload git

910b43d7de6ff44c1f5d709baca056a5d32b6404 first upload git

commid id  是git每生成一个版本就会自动生成一条时间线;  git的当前版本用 HEAD表示;

如果要回滚到之前的某个版本. 比如当前版本之前的一个版本   那就是  git  HEAD^;  再次查看当前版本时就会展示当前版HEAD 为first upload git

910b43d7de6ff44c1f5d709baca056a5d32b6404 first upload git

wangjianqingdeMacBook-Air:LearnDemo wangjianqing$ git reset --hard HEAD^

HEAD is now at 910b43d first upload git

wangjianqingdeMacBook-Air:LearnDemo wangjianqing$ git log --pretty=oneline

910b43d7de6ff44c1f5d709baca056a5d32b6404 (HEAD -> master) first upload git

wangjianqingdeMacBook-Air:LearnDemo wangjianqing$ 

如果要再次回到回滚之前的版本; 可以选择两种方法: 1是找到回滚之前的commit id   使用git reset  --hard id

wangjianqingdeMacBook-Air:LearnDemo wangjianqing$ git reset --hard 5897448c4d24009e043a9129168c2d65c990431e

HEAD is now at 5897448 second upload git

wangjianqingdeMacBook-Air:LearnDemo wangjianqing$ git log --pretty=oneline

5897448c4d24009e043a9129168c2d65c990431e (HEAD -> master) second upload git

910b43d7de6ff44c1f5d709baca056a5d32b6404 first upload git

如果找不到回滚之前的commit id 值的话 ,可以先使用git reflog查看命令操作历史,然后再滚回来

wangjianqingdeMacBook-Air:LearnDemo wangjianqing$ git reflog

5897448 (HEAD -> master) HEAD@0: reset: moving to 5897448c4d24009e043a9129168c2d65c990431e

910b43d HEAD@1: reset: moving to HEAD^

5897448 (HEAD -> master) HEAD@2: commit: second upload git

910b43d HEAD@3: commit (initial): first upload git

 

8、$ git checkout -- readme.txt 意思是把工作区的修改撤销掉 注意:如果不加--  git checkout file 会将版本切换成心得分支

  git reset HEAD <file>  意思是把暂存区的修改撤销掉

一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;

一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。可以先撤销暂存区的修改   再撤销工作区的修改,这样就干净了

总之,就是让这个文件回到最近一次git commitgit add时的状态。

 

9、要删除某个文件  如果已经提交到仓库,首先再本地删除,然后在仓库中国删除

$ rm test.txt  删除本地的文件

  git rm删掉,并且git commit  再把仓库中的文件删除

 $ git checkout -- test.txt  如果发现删除错了  可以从仓库中在回复过来

 

10、在用户主目录中,打开.ssh隐藏文件,  如果没有这个文件  需要自己创建一个:$ ssh-keygen -t rsa -C "youremail@example.com"

登陆GitHub,打开“Account settings”,“SSH Keys”页面:

然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:

如果有多台电脑需要提交到仓库,那么就需要把多个对应的key粘贴到github, 方便它识别是自己人.

wangjianqingdeMacBook-Air:~ wangjianqing$ cd .ssh

wangjianqingdeMacBook-Air:.ssh wangjianqing$ ls

id_rsa known_hosts ls -l.pub

id_rsa.pub ls -l reports

 

 

 

 

以上是关于Git基本使用的主要内容,如果未能解决你的问题,请参考以下文章

Git命令基本使用

git的基本使用

git的基本使用

Git基本使用

Git的基本使用

Git的基本使用