入门Git

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Betterc5/article/details/84328055

本文是我在[实验楼]这个平台学习git时的第一篇学习笔记,现贴出来以飨大家!

git学习

1、git的配置

git的配置主要通过git config --global <配置名称> <配置的值>来对git进行配置

其中最常用的配置为:

git config --global user.name name
git config --global user.email email

完成配置后,配置信息会存在于一个隐藏文件中:.gitconfig。可以通过cat .gitconfig查看配置内容。

2、获取一个Git仓库

这有两种方法:

1、从已有的Git仓库中克隆(clone)。通过git clone URL方式clone代码。

2、新建一个仓库。通过git init在某文件夹中初始化一个空仓库,初始化完毕后,在该文件夹中会新建一个隐藏文件`.git``

3、git的基本流程

1、创建或修改文件

2、使用git add命令添加新创建或修改的文件到本地缓存区(index)

3、使用git commit命令提交本地代码库

4、使用git push命令将本地代码库同步到远端代码库

git status查看当前git仓库的状态,新建的文件的状态时:untracked

使用git add file命令将文件加入到缓存区(index)后,该文件状态会改变为:new file

使用git diff --cached查看缓存区中哪些文件被修改了,进入该界面后,需要输入q才可以退出,该命令只查看加入到缓存的文件的变化。

使用git commit提交修改,git commit可选参数:-m添加本次修改的注释,完成后就会记录一个新的项目版本。:-a将没有加到缓存区的修改也一起提交,对已提交过的文件进行修改后,文件状态变为:modified,需要注意的是-a命令不会添加新建的文件,如果一个文件不是新建的,而是被修改过,则可以通过这个命令提交,如果是新建的,则不能进行提交。

如果是删除文件,则直接使用git rm命令删除后会将已删除文件的信息添加到缓存区,git commit提交后就会将本地仓库中的对应文件删除。

如果希望将本地仓库关联到远端服务器,可以使用git remote命令,当前仓库是使用git init初始化的本地仓库,所以需要将本地仓库与远程仓库关联,使用的命令为:

git remote add origin https://github.com/user-name/project.git

git remote add命令用于添加远程主机,origin是主机名,可以自定义,https://github.com/user-name/project.git是要关联的远程仓库地址。

提交代码:

git push origin master

4、分支与合并

git分支可以让你在主线(master)之外进行代码提交,同时又不会影响代码库主线。

分支的作用:体现在多人协作开发中,比如一个团队开发软件,你负责独立的一个功能需要一个月的时间来完成,你就可以创建一个分支,只把该功能的代码提交到这个分支,而其他同事仍然可以继续使用主线开发,你每天的提交不会对他们造成任何影响。当你完成功能后,测试通过再把你的功能分支合并到主线。

1、创建分支:

git branch branch-name

git branch命令可以查看当前的分支列表,以及目前的开发环境处于哪个分支上。

2、切换分支

master分支是git系统默认创建的主分支,*号标识了你当前工作在哪个分支下。

git checkout 分支名可以切换到其他分支。

3、合并分支

通过git merge合并分支

eg:

git merge -m "注释" 需要合并的分支名

如果不同分支同时修改了同一文件,则不能直接通过git merge命令合并。此时通过git status查看状态,则被同时修改的文件的状态为:both modified

此时查看被修改的内容,可以看到不同分支对该文件的修改,也可以通过git diff查看到相同的内容。

不同分支冲突的内容都被添加到被修改的文件中,此时需要手动解决冲突,用vim打开该文件,去掉<<<<<<等符号后,根据需要保留提交的 内容,然后git addgit commit提交。

如果出现cannot do a partial commit during a merge

1、提交全部:git commit -a

2、如果不想提交全部,可以通过添加-i选项:git commit file/to/path -i -m "merge"

4、删除分支

完成合并后,不再需要某分支时,可以通过以下命令删除:

git branch -d branch-name

git branch -d只能删除那些已经被当前分支合并的分支,如果要强制删除某分支,用git branch -D

5、撤销一个分支

通过以下命令,返回合并之前的状态。

git reset --hard [merge前的版本号]

5、git日志

1、查看日志

通过git log命令显示所有提交,回车会逐步显示,输入q退出

2、日志统计

如果用--stat选项使用git log,它会显示在每个提交中哪些文件被修改了,这些文件分别添加或删除多少行内容。

git log --stat

3、格式化日志

--pretty参数可以使用若干表现格式,如oneline、short、medium、full、fuller、email、、raw

--graph用来可视化提交图

4、日志排序

日志记录可以按不同的顺序来显示,如果你要指定一个特别的顺序,可以为git log命令添加顺序参数。

指定--topo-order参数,让提交按拓扑顺序来显示(就是子提交在它们的父提交前显示)

git log --pretty=format:"%h:%s" --topo-order --graph

也可以用--reverse参数来逆向显示所有提交日志。

猜你喜欢

转载自blog.csdn.net/Betterc5/article/details/84328055