git的安装和使用

75 阅读6分钟

GIT

git的简介

代码管理工具,其特点是:分布式管理代码,有分支,代码回退,代码合并(团队开发)

安装和配置【第一次安装git需要做的事情】

1.安装软件到本地电脑上 2.配置本地电脑的全局git的账号和邮箱(一个电脑只做一次) -.git config --global user.name '账号' -.git config --global user.email '12345@qq.com' 3.生成本地的公钥和密钥 -ssh-keygen -t rsa -C '12345@qq.com'连续回车三次,得到一个.ssh文件夹 4.把本机的公钥添加到远程的账户的ssh公钥里,目的是让本地电脑和远程账户进行关联 -公钥的位置:``把这个文件使用txt程序打开,复制里面的代码,粘贴到远程账号的ssh公钥里即可

仓库的创建和基础的使用

1.首先在项目中创建一个git仓库 git init目的就是为了在当前的项目中创建一个.git文件夹,一个项目只做一次就行 2.暂存区储存 git add .git add *如果你想把单独的一个指定的文件存入暂存区git add fileName 3.把暂存区的内容存入真正的本地仓库中 git commit -m'本次你具体的干了什么的一个标识内容'

高级使用-代码的回退

1.查看历史的提交记录,目的是为了获取提交的id git log 只能查看正常提交的记录,对于回退后的记录就会丢失 git reflog [注意]在git bash命令窗口里,不可以使用快捷键复制和粘贴,只能选择后右击copy或paste 2.复制commitid用来代码的回退 git reset --hard commitid重新设置我们的分支

查看仓库的状态

git status

本地仓库和远程仓库的关联和上传与下载

1.本地仓库关联远程仓库 `` 【注意】仓库地址,前缀必须是git@xxx开头的,不可以是https的 2.上传本地仓库到远程仓库中[必须联网] 【如果是第一次上传】:git push -u origin "master"把本地仓库的内容上传到远程仓库的master分支上 【如果不是第一次上传】:git push

git的工作流程

1.安装并配置git在电脑上【每个电脑只做一次】 2.在项目中初始化仓库:git init【每个项目里只做一次】 3.每次项目中改变了内容后,都要先存入暂存区:git add * 4.再从暂存区存入到本地仓库:git commit -m ‘log’ 5.从本地仓库传到远程仓库:git push 如果是第一次上传:git push -u origin master 6.总结:git add .>git commit -m 'log'>git push

克隆代码

1.git clone 项目地址克隆可以克隆所有公开的项目。

拉取远程仓库的代码到本地【拉取代码】

git pull

git仓库的权限

1.对于开源的项目,我们可以克隆下来,但是没有权限去修改远程的开源项目,因为我们没有权限 2.如果你想修改别人仓库的内容,需要加入到仓库的成员中,获取到仓库的权限

代码冲突的问题【最大的一个问题】

当多人操作同一个文件的时候,在该文件的同一个位置都书写了内容,这个时候git的合并策略就会失败,然后就长生了代码冲突的问题

解决冲突

1.首先在项目中手动解决冲突 2.存入本地 3.在上传到远程

[注意事项]

1.仓库不能套仓库 2.什么时候使用git init初始化仓库?远程仓库必须是一个空仓库的时候,我们才能在本地初始化新仓库,然后再关联,最后再上传

分支管理

1.创建分支:git branch name 2.切换分支:git checkout name 创建并切换到新分支:git checkout -b name 3.第一次上传新分支到远程:git push origin name以后就直接git push 4.克隆指定的分支:git clone -b name 仓库地址-b是--branch的缩写 5.删除本地分支:git branch -D name-D是--delete的缩写 6.删除远程分支:git push origin -d name 7.[注意]:每次切换分支前,一定要确保当前分支全部是存储的状态,删除某个分支的时候我们不能在被删除的分支中

git reflog

标签tag管理

1.创建标签:git tag name或者git tag -a name -m 'log' 2.查看标签:git tag 3.删除标签:git tag -d name 4.上传标签:git push origin name 5.使用tag去回退代码 -查看taggit tag -查看指定tag的详细信息git show name 获取到提交的commitid -根据id回退代码git reset --hard commitid

代码合并

1.git merge name合并指定分支到当前分支

vim编辑器

1.esc键 2.shift键+冒号 3.输入!wq 4.i是进入编辑模式

团队开发流程

1.一开始,所有人都需要克隆我的仓库到本地 2.接下来是开发代码 3.先把自己的改动存入本地:git add .``git commit -m '存自己的' 4.自己的改动存入本地后,先拉取一下远程的代码:git pull目的是为了保持和远程是一样的,都是新的记录 5.【重点】: 1.一定要注意看pull后的代码提示,如果有冲突一定要先解决冲突,存入本地,在上传到本地 2.如果没有提示冲突,意味着git帮我们把远程代码和咱们本地代码进行了合并,然后再git pull上传到远程仓库 6.总结:每次改动项目后,先存本地,再拉取远程,最后提交push

公司里的团队协作

1.首先本地和线上分支都有一个自己的分支:dev-songyu dev-sunxinyang dev-wenting 2.以后的开发全都在自己的分支中操作:dev-wenting:提交到该分支,然后再拉取master分支的代码,最后提交到远程的dev-songyu 3.去线上仓库发起一个和并请求,然后由项目组长去审查代码,项目组长负责把我的分支代码合并到master上

一件快速解决冲突

1.在vscode里使用ctrl+shift+p输入:merge选择 2.保留远程的代码选择:>merge conflict:Accept All incoming 3.保留自己的代码:>merge conflict:Accept All current