Git基础操作
## Git基础操作
Git下载地址: http://npm.taobao.org/mirrors/git-for-windows/
本博客内容保留了自己想精简的内容,参考于作者狂神说,原博客地址:https://mp.weixin.qq.com/s/Bf7uVhGiu47uOELjmC5uXQ
1、SVN 集中版本控制
所有的版本数据都保存在服务器上,协同开发者从服务器上同步更新或上传自己的修改所有的版本数据都存在服务器上,用户的本地只有自己以前所同步的版本,如果不连网的话,用户就看不到历史版本,也无法切换版本验证问题,或在不同分支工作。
2、Git 分布式版本控制
所有版本信息仓库全部同步到本地的每个用户,这样就可以在本地查看所有版本历史,可以离线在本地提交,只需在连网时push到相应的服务器或其他用户那里。
3、Git和SVN的主要区别
SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候,用的都是自己的电脑,所以首先要从中央服务器得到最新的版本,然后工作,完成工作后,需要把自己做完的活推送到中央服务器。
Git是分布式版本控制系统,没有中央服务器,每个人的电脑就是一个完整的版本库,工作的时候不需要联网了,因为版本都在自己电脑上。
4、启动Git
安装成功后在开始菜单中会有Git项,菜单下有3个程序:任意文件夹下右键也可以看到对应的程序。

Git Bash:Unix与Linux风格的命令行,使用最多,推荐最多
Git CMD:Windows风格的命令行
Git GUI:图形界面的Git,不建议初学者使用,尽量先熟悉常用命令
5、Git配置
打开Git Bash界面 ,查看配置 git config -l
查看不同级别的配置文件
#查看系统config
git config --system --list
#查看当前用户(global)配置
git config --global --list
Git相关的配置文件:
1)、Git\etc\gitconfig :Git 安装目录下的 gitconfig --system 系统级
2)、C:\Users\Administrator\ .gitconfig 只适用于当前登录用户的配置 --global 全局
设置用户名与邮箱(用户标识,必要)
git config --global user.name "coolSheep" #名称
git config --global user.email 123123123@qq.com #邮箱
6、Git的四个工作区域:
- Workspace:工作区,就是你平时存放项目代码的地方
- Index / Stage:暂存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息
- Repository:仓库区(或本地仓库),就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本
- Remote:远程仓库,托管代码的服务器,可以简单的认为是你项目组中的一台电脑用于远程数据交换
7、Git的基础命令:
#在当前目录新建一个Git代码库,执行后在项目目录钟就会多出一个.git目录,版本信息会存放在这里面。
git init
#从远程服务器的仓库中克隆一个项目和它的整个代码历史(版本信息),
git clone [url]
#添加所有文件到暂存区
git add .
#提交暂存区中的内容到本地仓库 -m 提交信息,一般用于写注释
git commit -m "注释消息内容"
#查看指定文件状态
git status [filename]
#查看所有文件状态
git status
# 列出所有本地分支
git branch
# 列出所有远程分支
git branch -r
# 新建一个分支,但依然停留在当前分支
git branch [branch-name]
# 新建一个分支,并切换到该分支
git checkout -b [branch]
# 合并指定分支到当前分支
$ git merge [branch]
# 删除分支
$ git branch -d [branch-name]
# 删除远程分支
$ git push origin --delete [branch-name]
$ git branch -dr [remote/branch]
#查看目录的隐藏文件
ls -a
#删除本地仓库信息
rm -rf .git
#初始化一个新的本地仓库
git init
#如果.gitignore失效则可以执行以下代码
git rm -r --cached .
git add .
git commit -m "update gitignore"
这里第一步git rm -r --cached .有时候会出现
error: the following files have staged content different from both the file and the HEAD:
(use -f to force removal)
这是因为你要删除的文件和版本库(commit后的)不一致,可以先将目前的修改commit,然后再执行同样的内容。
#git如何把master合并到自己分支
1.切换到主分支
git checkout master
2.使用git pull把master代码拉到本地
git pull
3.切换到自己的分支——>(XXX)
git checkout XXX
4.使用merge把主分支的代码合并到自己的分支
git merge master
注意:合并时有可能会有冲突,解决完冲突才能push
5.最后push,你分支的代码就和主分支的一样了
git push
# 如何修改已经commit但是还没有push到远程的代码注释
git commit --amend
进入界面后,摁a或者i进入编辑模式,将第一行中的注释(注意不是下面的带有edit或者pick字眼的注释)修改为正确的注释,然后摁ESC退出编辑模式,再输入:wq!来保存退出
#推送现有文件夹
cd existing_folder
git init --initial-branch=main
git remote add origin url
git add .
git commit -m "Initial commit"
#推送现有的 Git 仓库
cd existing_repo
git remote rename origin old-origin
git remote add origin url
8、设置码云Gitee的免密码登录:
8.1、设置本机绑定SSH公钥,实现免密码登录!(免密码登录,这一步挺重要的,码云是远程仓库,我们是平时工作在本地仓库!)
# 进入 C:\Users\Administrator\.ssh 目录
# 生成公钥
ssh-keygen -t rsa
8.2、将公钥信息public key 添加到码云账户中即可。


浙公网安备 33010602011771号