作用:代码的存档备份(支持多人协作开发)
介绍:git 是一个免费且开源的分布式的版本控制系统,用于高效敏捷的开发大小项目。
背景:git是Linus Torvalds 为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。
下载:Git - Downloading Package
1.初始化git仓库,在当前目录下生成一个隐藏文件夹:git init(多一个隐藏的.git文件夹(暂存区和仓库区))
2.git三个区:工作区=>暂存区=>仓库区
(1)工作区:书写代码的地方,工作目录
(2)暂存区:暂存提交代码的地方 目的:避免误操作
(3)仓库区: 代码永久存储区,每次存入git仓库后,都会生成版本号,可以任意回退到任何一个具体版本
3.配置提交者信息
推荐全局配置(只需配置一次)
使用global参数,配置全局的用户名和邮箱,秩序配置一次即可
git config --global user.name jepson
git config --global user.email jepsonpp@qq.com
查看配置信息:git config --list
将工作区代码提交到暂存区:git add .
将暂存区代码提交到仓库去:git commit -m'提交说明'
查看文件状态(红:工作区文件待提交 绿:暂存区文件待提交 不红不绿:仓库区):git status
简化(git status -s)
查看提交日志:git log 简化(git log --oneline)
从工作区快速提交到仓库区(必须是被仓库管理过的 也就是暂存过的(git add .)):git commmit -a -m'提交说明'
修改最近一次的提交说明:git commit --amend -m "提交说明"
取消暂存:git reset
q(退出)
版本回退:git rest git rest --hard 版本号
git rest --hard head~1(将版本回退到上一次提交)
git rest --hard head~0(将版本回退到最近一次提交)、
不希望被仓库管理的文件:创建gitignore文件 将想要不被仓库管理的文件放入gitignore
分支:
分支的存在:可以保证功能开发的独立性。
分支的本质:是一个指针,指向某个提交的版本,每次代码提交后,这个指针就会向后移动,保证一直指向最后一次提交的版本。
进阶:其实所谓的版本回退切换,就是让分支指针指向不同的版本。
分支相关命令:
git branch 分支名 (创建分支) git branch (查看分支)
git checkout 分支名 (切换分支)git merge 分支名 (合并分支)
git branch -d 分支名 (删除分支)git checkout -b 分支名(创建并切换分支master)
公私钥:
命令:ssh-keygen -t rsa
将本地仓库中的代码提交到远程仓库中:git push 仓库地址 分支名
git push -u 仓库地址 分支名(默认值 后面可以直接 git push 提交)
给远程仓库创建别名:
git remote add 仓库别名(origin)仓库地址
删除origin这个别名
git remote remove origin
git clone:克隆远程仓库代码到本地
语法:git clone [远程仓库地址][文件夹名]
多人协作时先git pull(拉取更新)再git push(提交)
语法:git pull 仓库地址 分支名
下载远程分支代码并创建关联:git checkout -t origin/分支名