当前位置:   article > 正文

github入门与实践

github入门与实践

以下为github入门与实践的总结.
1.换行符处理:在windows中是以CRLF(carriage return +line feed)换行。
MAC或者LInux中是以LF(Line Feed)换行的,git会自动转换这些换行符。
2.git安装初始设置
(1)设置姓名和邮箱地址

git config --global user.name "name"
git config --global user.email "email@example.com"
  • 1
  • 2

(2)提高命令的可读性
将color.ui设置为auto可以让命令的输出拥有更高的可读性。

git config --global color.ui auto
  • 1

3.创建账户后,添加SSH key ,将生成的公开密钥添加到github的ssh keys中,使用下面代码测试是否完成设置

ssh -T git@github.com
  • 1

4.创建仓库不在介绍。
5.clone 已有仓库.这里需要输入github设置的公开密钥的密码,认证成功后仓库就能克隆到本地。

git clone git@github.com...skdfjh.git
  • 1

6.提交
在本地进行操作后,需要将代码提交到仓库。
通过git add命令将文件加入暂存区,在通过git commit 命令提交。可以通过git log 命令查看提交日志。通过git push上传到远程仓库。

git add +某个文件名   //单个文件操作
git add .					//增加全部文件
git commit -e "第一次提交代码。"
git push 
  • 1
  • 2
  • 3
  • 4
  1. git 常用的命令
    要进行版本管理必须先进行初始化仓库。.git这个目录称为“附属于该仓库的工作树。”
git init     //初始化仓库
git status	//查看仓库的状态
git add			//向暂存区中添加文件
git commit //保存仓库的历史记录 -m 简洁信息,想详细记录不要-m
git log 	//查看提交日志
git log --pretty=short 	//只显示提交信息的一行
git log README.md 	//加目录名只会显示该目录下的日志,如果是文件名就只会显示与该文件相关的日志。
git log -p 	//查看文件前后的改动。
git diff 	//查看更改前后的差别。查看当前工作树与暂存区的差别   输出文件中+表示添加行  -表示删除行
git diff HEAD 		//查看工作树与最新提交的差别。查看本次提交与上一次提交的差别。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

8.分支操作
在进行多个并行作业是,会用到分支,并且往往同时存在多个最新代码的状态。可以等该分支程序完成后与主分支进行合并。

git branch 			//显示所有分支
git checkout -b  		//创建、切换分支,如果想以当前master分支为基础创建新的分支,可以用此命令
git branch  A
git checkout A				//这两行也能达到checkout -b 的效果。
git checkout master    		//切换到主分支
git checkout -  			//切换到上个分支
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

9.合并分支 把分支feature-A合并到主分支master

git checkout master   //切换到主分支
git merge  --no-ff feature-A   //参数--no-ff为了在历史记录中明确记录下本次分支合并,创建合并提交。默认信息就是合并分支过来的相关内容。
  • 1
  • 2

10.以图表形式查看分支

git log -graph   //用图表形式输出提交日志,非常直观。
  • 1

11.回溯历史版本

在回溯A分支之前我们先创建一个B分支,在进行A分支的回溯,如图
在这里插入图片描述

git reset --hard  哈希值      //可以让仓库的HEAD、暂存区、当前工作树回溯到指定状态,哈希值各不相同。使用//     Add index的哈希值
//哈希值只需要输入4位就可以
git log 只能查看以当前状态为终点的历史日志
git reflog 查看当前仓库的操作日志,在使用git reset  --hard 进行回溯
只要git不行行GC(垃圾回收)都可以随意调取近期的历史状态。
  • 1
  • 2
  • 3
  • 4
  • 5

12 消除冲突
当我们合并分支时出现冲突,就会提示README.md文件发生冲突,使用编辑器打开该文件,并把冲突修改为自己想要保存的文件,冲突解决后使用git add 和 git commit

git merge --no-ff fix-B
  • 1

13.修改提交的信息

git commit -amend    //对于已经提交的记录,可以通过修改其内容,保存,提交日志的信息就会发生变化
  • 1

14.压缩历史
在合并时,如果发现已经提交的内容有些拼写错误,不防提交一个修改,然后将这个修改包含到前一个提交中,压缩成一个历史记录。
提交一个有问题的commit ,修改README.md,然后进行提交

git commit -am "fix typo"  //漏字错字等失误统称typo。
  • 1

15.更改历史
刚才的提交错误更改还是不够完美。因此将修正内容与前一次合并提交,在历史记录里合并作为一个完美的提交。

git rebase -i HEAD-2	//当前分支最新的两个最新历史记录为对象,在编辑器中打开。修改 后保存,

pick sdf78 Add feature-C
pick jksdjf5 fix typo
//将编辑器中的pick更改为fixup如下
pick sdf78 Add feature-C
fixup jksdjf5 fix typo
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

16.添加 远程仓库

git remote add origin git....		//	就可以将远程仓库设置为本地仓库
  • 1

17.推送至远程仓库

git push -u master
//-u参数可以在推送的同时,将origin仓库的master分支设置为本地仓库当前分支的upstream上游,添加了这个额参数将来运行git pull 命令从远程仓库获取内容时,本地仓库的这个分支就可以直接从origin的maser分支获取内容,省去了另外添加参数的麻烦。

git checkout -b feature-D
git push -u origin feature-D
  • 1
  • 2
  • 3
  • 4
  • 5

18.从远程仓库获取

git clone git@...
git checkouut -b feature-D origin/feature-D   //新建本地分支,拉取指定远程仓库
git pull origin feature-D	//获取最新远程分支
  • 1
  • 2
  • 3

只要掌握以上内容就可以应付日常开发中大部分操作!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/397457
推荐阅读
相关标签
  

闽ICP备14008679号