linux下git的简单操作(入门)

来源:互联网 发布:nginx lua 增加header 编辑:程序博客网 时间:2024/06/09 19:56

1.创建一个仓库,来到项目目录

#:git init

这时文件夹下出现一个.git的隐藏文件,这说明仓库已经建好了

2.将你需要用到的文件添加到仓库中,可以反复添加

#:git add  text.c

如果当前文件夹下的所有文件

#: git add ./*

3.添加之后如果不修改,则直接提交,然后仓库中就保存当前修改了

#:git commit  -m “version 1”

这样就是git的主流程

--------------------------  下面是常用操作 ---------------------------

1.当你修改文件添加后可以查看仓库状态

#:git status

----------------------------------------------------------------------------

2.查看修改文件和源文件的不同

#: git diff

查看与某个版本的区别

#: git diff HEAD -- <name>

----------------------------------------------------------------------------

3.版本退回  
HEAD指向的版本就是当前版本
#: git reset --hard HEAD^ //回到上一个版本   HEAD^^上上个版本 HEAD~100上100个版本
#: git reset --hard 125125372 //这里125125372为某一个版本的版本号,直接恢复到这个版本
----------------------------------------------------------------------------

4.用git log可以查看提交历史,以便确定要回退到哪个版本。

#: git log //查看最近提交的日志 详细信息

#: git log --pretty=oneline //简单信息,一行显示
-----------------------------------------------------------------------------
5.查看命令历史,以便确定要回到未来的哪个版本。

#: git reflog
-----------------------------------------------------------------------------
6:工作区介绍

<1> working directory (工作区):可以看见的文件的文件夹

<2> Repository(版本库):在工作区中有一个隐藏的.git文件,这个不算工作区,是git的版本库git的版本库里面有很多东西,最重要的是stage(暂存区)还有git为我们自动创建了第一个分支master,以及指向master的一个指针HEAD。

<3> 当我们在工作区该写完文件时,用git add把文件添加进版本库中时,实际是暂时放到stage(暂存区)中,当执行commit时,才把这个文件挂在到master分支上去
-----------------------------------------------------------------------------
7.管理修改介绍

<1> Git 跟踪并管理的是修改,而非文件所谓修改:就是变动的地方,比如新增了某一行,某一个单词,或者某一个符号,甚至是某一个文件,都叫做修改

<2> 每次修改,如果不add到暂存区,那就不会加入到commit中。

-----------------------------------------------------------------------------
8.撤销修改

#: git checkout --  readme.txt

意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:
<1> 一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
<2> 一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。

#: git checkout -- file

命令中的--很重要,没有--,就变成了“切换到另一个分支”的命令,我们在后面的分支管理中会再次遇到git checkout命令。
-----------------------------------------------------------------------------
9.删除文件
#: rm test.c   

这个时候,Git知道你删除了文件,因此,工作区和版本库就不一致了,git status  命令会立刻告诉你哪些文件被删除了,现在你有两个选择,

<1>确实要从版本库中删除该文件,那就用命令git rm删掉,并且git commit:
 #: git rm test.txt 
 #: git commit -m "remove text.txt"
<2>另一种情况是删错了,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到最新版本:
 #: git checkout -- test.txt
注意:命令git rm用于删除一个文件。如果一个文件已经被提交到版本库,那么你永远不用担心误删,但是要小心,你只能恢复文件到最新版本,你会丢失最近一次提交后你修改的内容。
-----------------------------------------------------------------------------
10.创建与合并分支:
查看分支:git branch
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>
----------------------------------------------------------------------------
11.解决冲突

命令可以看到分支合并图

#: git log --graph

#: git log --graph --pretty=oneline --abbrev-commit
----------------------------------------------------------------------------
12.分支管理策略
合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息。如果要强制禁用Fast forward模式,Git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。
----------------------------------------------------------------------------

详细学习,可以参考 https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 廖雪峰的git笔记

原创粉丝点击