一、git 与github

git是一个版本管理工具软件。作用可以让你更好的管理你的程序。例如提交修改的代码,查看原来的代码等。

github 是一个网站,主要用于开源的代码托管,可以理解为世界上最大的代码仓库。你每次也可以把自己的代码提交到网上,让别人都可以看到并下载你的代码,同时别人可以帮您修改代码。实际上很多著名的开源软件都是通过这种方式开发

https://gitee.com/

二、安装与配置

1)检查一下自己的电脑c:\user\自己电脑名字\ 检查一下有无.gitconfig 这个配置文件

2)安装完成后账号和邮箱的修改

[user]
 name = dengbin
 email = 58021125@qq.com

也可以使用命令行修改:

$ git config --global user.name "your name"
$ git config --global user.email "58021125@qq.com"

三、git的基本概念

使用git作为版本管理软件,将用户的目录分成三个区域:工作区、暂存区、git仓库。

工作区:可理解你放代码的目录

暂存区:临时完成的工作,暂时提交到暂存区,等待被提交到git仓库

git仓库:最终代码存放地

四、git的基本命令应用

步骤:

1)新建一个gitdemo的文件夹,不能有特殊保留字如git

  1. 进入该目录的git命令行

3)git初始化,作用生成一个空的git仓库

	git init
  1. 编写代码,完成添加到暂存区

​ 为你的代码文件。可以使用*.js \ *.html

git add <file>
  1. 将暂存区文件提交到git仓库

​ 注释是对本次代码修改功能的说明,说明你干了什么。

git commit -m "注释"

​ 注意,双引号是英文字符,注释可以是汉字

  1. 以后每次修改代码,都需要重复 add 命令先提交到暂存区,再使用 commit 提交到仓库。一般是下班前或者功能模块开发完成后提交。
其他git的常用命令:

git status 查看状态。

git diff 查看与上个版本的区别。如果本次有改动后(未提交)才可以看到变化

git log 查看最近到最远的提交记录

git reflog 查看命令历史,一般用来确认回到过去的那个版本

git reset --hard <commit_id> 用来回退到上一个版本。commit-id每次提交git根据您的注释自动生成的加密字符串。只需要输入前六位。

五、分支概念

主分支: 当使用git init命令初始化的时候,git默认给我们创建一个主分支(master)。通常当项目开发只有一个人时,所有的操作都是在主分支上进行,但是当多人协同开发时,所有程序员都对主分支直接操作是有风险的。

因此,当多个开发人员同时开发一个项目时,大家都先从master上克隆一份建立自己的分支(侧分支),在自己的分支上进行开发。当项目完成后,大家再把自己的分支合并到主分支上,整个项目就完成了。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QFl71qMS-1620819444330)(img/%E5%88%86%E6%94%AF1.png)]

5.1 分支相关命令

​ git branch 如果不输入分支名,则查看当前所有分支

​ git branch 分支名 创建一个侧分支

​ git checkout 分支名称 克隆侧分支并切换到该侧分支上。

练习:创建一个侧分支,编辑代码并提交到侧分支上的仓库中。再切换回主分支,查看代码是否有变换。(切换之前保证本地工作区都已提交完成 working tree clean)。然后再切换回侧分支。

5.2 合并分支

git merge 侧分支名

注意,合并操作前,先切换到主分支(master),再执行此命令。

5.3 合并冲突及解决(了解)

当两个侧分支对同一个文件进行了修改并提交,在合并时就会出现(conflict)

合并时出出现如下提示:

<<<<<<< HEAD
var name = "小红";
console.log( name );

var xiaohong = "小红";
=======
var  xiaoming = "小明"
>>>>>>> xiaoming

其中<<<<<<< =======>>>>>>> 是git自动添加的。此时需要两个开发者商量合并代码,商量好了以后删除git产生的那些标识符,然后再次提交就解决了冲突。

练习: 分别在两个侧分支上修改同一文件并提交到本地仓库。然后再合并两个侧分支代码,然后解决冲突。

合并冲突解决后,各分支再从master上更新。

先切换至自己的分支,

git checkout xiaohong

再和主分支执行一次合并

git merge master

5.4 删除侧分支

git branch -d 分支名称

注意,删除前工作区时干净的。

六、 文件忽略

​ 项目文件夹内有一些文件不希望提交到仓库,那么可以使用git的配置文件将其忽略。

​ 创建一个 .gitignore 文件放置在项目根目录下

​ 该文件内可将某个文件或目录忽略,不再提示要求提交该文件了。

temp.js
.gitignore
/node_modules/
*.html

七、提交到远程仓库

步骤:

1) 登录码云网站,创建一个远程的空仓库

2)创建远程空仓库完成后,在本地先切换到master分支,再向远程提交。注意,在提交之前确保本地工作区要提交本地仓库完毕。

  1. 输入以下命令向远程提交
git remote add origin https://git地址

git push -u orgin maser

​ 如果是git地址是https:// 开头,第一次提交时需要验证账号密码。

​ 提交完成后,刷新仓库页面,即可看到提交的代码。

4) 如果是第二次提交,则只需输入 git push origin master 即可

八、ssh管理

教程:https://gitee.com/help/articles/4181#article-header0

当ssh公钥配置完成后,以后就可以 ssh协议实现远程仓库的推送了

也就是说,有两种推送方式: https 和 ssh;推荐使用ssh方式

git remote add origin git@gitee.com:haotata168/gitdemo.git

git push -u orgin maser

以后本地仓库更新后再推送到远程,只输入 git push orgin maser 即可

常见错误解决:

1、提示远程仓库已经存在,解决方案删除远程仓库地址,重试一次

git remote rm orgin

git remote add origin https://git地址

it push -u orgin maser

以后本地仓库更新后再推送到远程,只输入 git push orgin maser 即可

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐