git知识讲解

Posted tomtellyou

tags:

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

git初始化

1.设置名字和邮箱

 git config --global user.name "zhangsan"
 git config --global user.email "[email protected]"

执行完以后,Linux在家目录下就会产生一个.gitconfig隐藏文件,windows点击开始-->个人文件夹(自己电脑的名字)
cat ~/.gitconfig
[user]
        email = [email protected]
        name = zhangsan

另外执行以下命令查看配置信息:
git config --list

2.获得git仓库
方法一:克隆一个仓库

cd  /home/guest/project   //自己的工作空间
git clone https://github.com/xxx

方法二:初始化一个新的仓库

cd /home/guest/project
git init
输出:Initialized empty Git repository in /home/guest/project/.git/

ls -al 发现 有.git文件夹 
.git

git基本操作

1.查看状态

git status

2.比较修改或者提交的内容

//比较本地工作空间和缓存中的差异
git diff

//比较缓存中和上次提交的差异
git diff --cahced
按q退出

3.添加新创建或修改的文件到本地的缓存区

git add *

说明:
新建文件,在没有被添加缓存中时,状态为untracked

git rm 
删除文件,自动将已删除的文件信息加入缓存,git commit 后自动将本地仓库中的文件删除

4.提交代码到本地代码仓库

git commit -m "xxx"

说明:
    -m 添加本次修改的注释    
    -a 参数将所有没有加到缓存区的修改也一起提交,但 -a 命令不会添加新建的文件

5.将本地仓库关联到远端仓库关联

git remote add 主机名  远端仓库地址

示例:
git remote add origin https://github.com/xxx/xxx.git

说明:
    git remote add 命令用于添加远程主机,origin 是主机名  https://xxx 是远端仓库地址

6.将本地代码库同步到远端代码库

git push origin master

说明:
     origin :主机名   master:分支名

问题记录:
提交会提示输入用户名和密码,解决办法:生成公钥,将公钥粘贴到远端仓库的SSH中。

5.创建新的分支

git branch xxx

查看当前分支列表
git branch

6.切换分支

git checkout xxx

7.分支代码合并

两个分支:master、Dev,将Dev分支的代码合入到master分支。
具体操作如下:

git checkout master         //先切换到master分支
git merge -m "xxx合并的提交信息xxx" Dev         //将Dev分支代码合并到master分支,如果两个分支修改了不同的文件,则合并不会产生冲突,否则会有冲突。

解决冲突:
(1.)查看状态: git status   错误:both modified
(2.)查看冲突文件:git diff 或者 cat xxx 
(3.)手动解决冲突: vi xxx  找到冲突的地方<<<< ==== >>>>的地方,手动解决冲突,删除不需要的代码。 

8.删除分支

git branch -d 分支名
git branch –D 分支名       //强制删除某个分支

9.撤销合并,放弃当前修改

git reset --hard HEAD^

10.git日志

git log //查看所有的提交记录
     --stat 选项会显示在每个提交(commit)中哪些文件被修改了, 这些文件分别添加或删除了多少行内

格式化显示:
git log --pretty=oneline
git log --pretty=short
git log --graph --pretty=oneline   //显示提交图
 git log --pretty=format:'%h : %s' --topo-order --graph       //显示提交拓扑图

总结

git config:配置相关信息
git clone:复制仓库
git init:初始化仓库
git add:添加更新内容到索引中
git diff:比较内容
git status:获取当前项目状况
git commit:提交
git branch:分支相关
git checkout:切换分支
git merge:合并分支
git reset:恢复版本
git log:查看日志

以上是关于git知识讲解的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段15——git命令操作一个完整流程

VSCode自定义代码片段15——git命令操作一个完整流程

如何管理在每个 git 版本中添加私有代码片段?

使用 Git 来管理 Xcode 中的代码片段

markdown Git代码片段

GitGit 分支管理 ( 克隆远程分支 | 克隆 master 分支 git clone | 查看远程分支 git branch -a | 克隆远程分支 git checkout -b )(代码片段