目录
//设置用户名字
git config --global user.name "用户名"
//设置用户邮箱
git config --global user.email ”邮箱地址“
//注意:global 命令只需要执行一次就可以永久生效
//查看所有的全局配置项
git config --list --global
//查看指定的全局配置
//查看用户名
git config user.name
//查看邮箱
git config user.email
//打开帮助手册
git help config
//不想查看完整版手册
git config -h
1.将没有进行版本控制的本地目录转为Git仓库
在项目目录中 打开Git Bash
执行git init 将当前的目录转换为Git仓库
2.从其他服务器克隆一个已经存在的Git仓库
git clone 地址
//查看文件是什么状态 红色未暂存 绿色未存Git仓 白色已经存在Git仓
git status
//简洁查看状态
git status -s
//将文件存储到暂存区
//使用git add 文件名可以存储一个
git add 文件名
//使用git add . 可以存储多个
git add .
//将暂存区的文件提交到Git仓库
//可以通过git commit -m “对本次提交的文件做出声明” 将当前的文件提交到Git仓
git commit -m “对本次提交的文件做出声明”
//通过git commit -a -m “对本次提交的文件做出声明” 可以直接跳过暂存区直接添加到Git仓
git commit -a -m “对本次提交的文件做出声明”
//把对工作区对应的文件进行修改 还原Git仓库中保存的版本
//操作结果:所有的修改丢失无法恢复
git checkout 地址
//需要从暂存区移出对应的文件
git reset HEAD 要移出文件的名称
//从Git仓库和工作区同时移出
git rm -f 文件名
//只从git仓库中移出 保存工作区的文件
git rm --cached 文件名
一般情况总是有一些文件无需纳入Git管理,也不需要他们总是出现在未跟踪文件列表,这种情况下,我们创建了一个名为.gitignore的配置文件
该文件中的配置只能影响那些当前还未交由git来管理的文件
#开头注释
/结尾 是目录
/开头 是防止递归
!开头 取反
//忽略所有的.a文件
.a
//跟踪所有的lib.a文件 即使在前面忽略.a文件
!lib.a
//只忽略当前目录下的TODO文件 而不忽略 stu/TODO
/TODO
//忽略任何目录下的bulid文件
bulid/
//所有的提交历史
git log
//只展示最新的两条提交历史
git log -2
根据指定的提交ID回退到指定版本
git reset --hard 版本地址
//免费开放的源项目源代码网站
GitHub(最好用,缺点国外的加载速度慢)
Gitlab(对代码私有性支持好 企业用户多)
Gitee (码云,国产 访问速度快 中文界面)
//以上的的托管平台只能托管 Git管理的项目源代码
HTTPS:零配置 每次访问仓库时 都需要输入GitHub的账号和密码
SSH:需要进行额外配置,不需要重复输入GitHub账号和密码(比较推荐)
//将本地仓库和远程仓库进行关联 并把远程仓库命名为origin
git remote add origin 地址
//将本地仓库的推荐推送到远程的origin仓库中
git push -u origin git文件名
//如果已经推送过了下次在推送 直接使用git push
作用:SSH 本地仓库和GitHub之间免登录的加密数据传输
好处:免登录 数据加密传输
SSH 由两部分组成
id_rsa 私钥文件 存放到客户端电脑中
id_rsa_pud 公钥文件 需要配置到GitHub中
记事本打开 id_rsa_pub复制里面内容
浏览器打开GitHub登录 点击头像 settings SSH and GPG keys New SSH key
将 id_rsa_pud文件中的内容,粘贴到key对应的文本框里
title文本框任意填写名称 来标识key从何而来
ssh -T git@github.com
git clone 远程仓地址
git branch
//可以查看当前所在分支
git branch 分支名称
//可以创建一个新分支
git checkout 分支名称
//切换到master分支
git checkout master
//在master分支上运行git merge 命令将分支合并到master分支
git branch -d 分支名称
如果在两个不同的分支中,对同一个文件进行了不同的修改,Git就没法干净的合并它们,我们需要打开这些包含冲突的文件然后手动解决冲突
//将本地仓库和远程仓库进行关联 并把远程仓库命名为origin
git remote add origin 地址
//将本地仓库内容推送到远程的origin仓库中
git push -u origin 分支名称
第一次推送分支需要 -u参数 后面之间使用git push推送到远程分支就可以了
git remote show 远程仓库名字origin
git pull
git pull origin git分支名称
使用
git fetch origin
或者git remote update origin --prune