Git:git常用命令
1、版本控制工具
一个可以管理和追踪软件代码的工具。
分类:
集中式版本控制工具:SVN
分布式版本控制工具:Git
2、Git 的概念:
工作区:就是指自己电脑上创建的项目目录。
暂存区:记录 git add 添加的文件相关信息,保存在项目目录下的 .git 目录下
本地仓库(版本库):也叫仓库,在这个目录中所有的文件都可以被 Git 管理,包括修改删除。
远程仓库:
3、基本命令:
3.1 配置:
git config --global user.name "你的用户名"
git config --global user.email "你的邮箱"
git config --list // 显示当前配置
3.2 初始化仓库
# 针对一个全新的项目,创建项目并进入项目后,执行以下命令:
git init
执行成功后,在当前项目目录下,会新增一个隐藏的文件夹 .git ,这就是版本库
# 克隆项目
git clone url...
3.3 文件跟踪-提交到暂存区
git add 文件名
git add -A // 添加所有变化,包括新建、修改、删除
3.4 文件跟踪-提交到版本库
git commit -m '在这里写入本次提交时对代码的修改说明'
注意:在提交之前,所有文件的变动都必须添加到暂存区。
git status // 检查当前项目状态
3.5 查看所有的历史记录
git log 所有的详细信息
git log --pretty=oneline 只会显示版本号和提交时的备注信息
3.6 本版回退
git reset --hard // 后退到最近提交的版本
git reset <本版号> // 回到指定版本,只回退commit记录,并不会回退代码
git reset --hard <本版号> // 回到指定版本,回退commit记录,并回退代码
3.7 分支
git branch --all 列出所有分支
默认分支 -- master
git branch <branch-name> 创建分支
git checkout <branch-name> 切换分支
git merge <branch-name> 合并分支
git branch -d dev 删除分支
git checkout -b hexin 切换并创建新分支'hexin'
3.8 忽略文件
排除某些不需要被检测的文件。
在创建项目后,根目录下新建 .gitignore 文件,在该文件内定义匹配规则,这些匹配规则必须在第一次提交之前添加进来,否则提交后,再修改该文件,新规则不会生效。
>> 匹配规则
* 以 # 开始的行为注释
* 以 * 代表任意多个字符
* 以 ** 代表匹配任意目录
* 以 ? 代表一个字符
* [abc] 代表方括号内任意一个字符
* ! 表示不忽略的文件或目录
* 以 / 开头的路径,表示忽略的文件在该文件下
* 以 / 结尾的路径,表示要忽略此目录下所有的子目录
4、本地仓库推送到远程端
4.1 注册(gitee、github)
4.2 远程端的仓库的创建
4.3 关联仓库
>> 生成密钥
ssh-keygen -t rsa -C '你的邮箱' (3次回车)
ls -al ~/.ssh // 查看密钥目录
>> 复制公钥
cat ~/.ssh/id_rsa.pub //复制到码云或github的ssh里 (在电脑中的位置:admin/.ssh/id_rsa.pub)
>> 回到 码云(github)=> 设置 => SSH
>> 测试是否设置成功(ssh -T git@gitee.com,遇到错误输yes)
>> 本地仓库推送代码到远程仓库
* 第一步、关联
git remote add origin 远程端仓库地址
* 第二步、先同步远程端到本地(如果远程端有代码)
git pull --rebase origin master
(git fetch 是将远程主机的最新内容拉到本地,但不主动合并代码)
* 第三步、第一次将本地仓库推送到远程端
git push -u origin master
* 之后每一次重复第二步、第三步(不需要加 -u)
git pull --rebase origin master
git push origin master
>>其他成员下载:
git clone 远程端仓库地址
>>解决冲突:
1.先改有冲突的文件,然后git status查看是否有文件需要保存
2.有的话git add -A保存需要保存的文件
3.执行冲突里面提示的命令git rebase --continue
4.再次git status查看状态,如有nothing to commit,则不需要git commit -m''了
5.最后git push -u origin master
6.git rebase --abort撤回合并
5、切换npm下载源
查看下载源:npm config list。注意:metrics-registry = “https://registry.npmjs.org/” 是官方下载源
切换下载源:npm set registry https://registry.npm.taobao.org/ 这是切换为淘宝下载源