一、Git的使用(本地仓库)
1. git使用前配置
在本地新建存储git项目文件夹,右击打开Git Bash Here,然后进行一下配置:
(1)配置提交人姓名:git config --global user.name 提交人姓名
(2)配置提交人邮箱:git config --global user.email 提交人邮箱
(3)查看git配置信息:git config --list
注:(1)如果要对信息进行修改,重复上述命令
(2)配置只需执行一次
2. 提交步骤
进入本地git项目文件夹,右击打开Git Bash Here,然后进行一下配置:
(1)git init 初始化git仓库
文件夹中新增.git文件夹(隐藏状态)
(2)git status 查看文件状态
查看文件夹中文件提交状态,未提交显示红色,已提交绿色
(3)git add 文件列表 追踪文件,提交到暂存区中
提交文件中要提交的文件/文件夹,再查看文件状态,该文件状态会显示绿色
(4)git commit -m 提交信息 向仓库中提交代码
提交信息必填,填写后才能提交第三步提交的文件
(5)git log 查看提交记录
3. 撤销
(1)用暂存区中的文件覆盖工作目录中的文件:git chechout 文件
(2)将文件从暂存区中删除:git rm --cached 文件
(3)将git仓库中指定的更新记录恢复出来,并且覆盖暂存区和工作目录:git rest--hard commitID
使用git log命令查看id
二、git分支
使用分支可以从开发主线上分离出来,以免影响开发主线
-
分支细分
(1)主分支(master):第一次向git仓库中提交更新记录时自动产生的一个分支 (2)开发分支(develop):作为开发的分支,基于master分支创建 (3)功能分支(feature):作为开发具体功能的分支,基于开发分支创建
-
分支命令
(1)git branch ,查看分支 (2)git branch 分支名称, 创建分支 在创建的分支上添加文件,需在分支上提交文件,其它分支才看不到 (3)git checkout 分支名称 ,切换分支 (4)git merge 来源分支, 合并分支,将开发分支合并到主分支上 需切换到主分支上,再输入“git merge 来源分支”命令 (5)git branch -d 分支名称, 删除分支(分支被合并才允许删除)(将-d改成-D强制删除) 需切换到主分支上,再输入命令
-
暂时保存更改
在git中,可以暂时提取分支上所有的改动并存储,让开发人员得到一个干净的工作副本,临时转向其它工作。 使用场景:分支临时切换 (1)存储临时改动:git stash 在分支上添加文件后,但不想提交又不想其它分支看到,在分支上使用git stash命令,分支上就没有需要提交的文件,其它分支就看不到添加的文件 (2)恢复改动:git stash pop 恢复临时存储的文件
三、GitHub远程仓库
-
创建本地仓库
(1)在本地新建文件夹,在文件夹中右击打开Git Bash Here,输入git init 初始化git仓库;
-
创建远程仓库
(1)进入github创建仓库 注:创建的仓库不能与本地仓库名称相同
-
本地仓库推送到github远程仓库
(1)git push 远程仓库地址 分支名称 (2)git push 远程仓库地址别名 分支名称 (3)git push -u 远程仓库地址别名 分支名称 -u 记住推送地址及分支,下次推送只需要输入git push即可 (4)git remote add 远程仓库地址别名 远程仓库地址(给远程仓库起别名,下次推送可直接使用别名)
-
远程仓库克隆到本地仓库
(1)git clone 仓库地址 在哪打开Git Bash Here,克隆文件夹就存储在哪
-
B推送到远程仓库
(1)将代码提交到本地仓库 (2)A将B拉到远程仓库项目中 (3)B将本地仓库推送到远程仓库
-
A将最新版本更新到本地仓库
(1)拉取远程仓库中最新的版本:git pull 远程仓库地址 分支名称 注:1、克隆仓库一般只在第一次拉取远程仓库进行,后期使用拉取远程仓库最新版本 2、远程仓库版本高于本地仓库,本地仓库不能提交到远程仓库,本地仓库需拉取远程仓库最新代码,再提交;
-
解决冲突
在多人同时开发一个项目时,如果两人修改同一个文件同一个地方,就会发生冲突,冲突需要人为解决 (1)程序员A修改某地方提交了代码,程序员B也修改该地方提交代码就会产生冲突; 解决方法:1、程序员B拉取程序员A提交的最新代码 2、删除不要的代码,提交到暂存区,再提交到本地仓库,再推送远程仓库 (2)向别人的仓库中提交代码
-
SSH免登录
1)设置Git的user name和email: $ git config --global user.name "XXXX" $ git config --global user.mail "XXXX@XXXX.com" 2)生成SSH密钥过程: 1.查看是否已经有了ssh密钥:cd ~/.ssh 如果没有密钥则不会有此文件夹,有则备份删除 2.生存密钥: $ ssh-keygen -t rsa -C “XXXX@XXXX.com” 按3个回车,密码为空。 这样即可在C:\Users\admin\.sss文件下得到两个文件:id_rsa 和id_rsa.pub; 3)登录https://github.com/,如没有账户则注册登录进入。 登录进去之后,选择SSH and GPG Keys->New SSH key Key的内容为id_rsa.pub里面的内容