git --version
设置自己的用户名和邮件地址。因为通过 Git 对项目进行版本管理的时候,Git 需要使用这些基本信息,来记录是谁对项目进行了操作:
输入命令: git config --global user.name '用户名'
输入命令: git config --global user.email '邮箱地址'
检测是否配置成功,查看全局的配置信息:
输入命令:git config --global --list
注意:如果使用了 --global 选项,那么该命令只需要运行一次,即可永久生效
window:进入到项目文件夹中,点击鼠标右键,打开git命令窗口
mac:终端输入:cd 然后把项目文件夹拖进来 或者 cd 项目文件路径
按回车
输入: git init
创建一个名为 .git 的隐藏目录
这个 .git 目录就是当前项目的 Git 仓库,里面包含了初始的必要文件,这些文件是 Git 仓库的必要组成部分。
将工作区指定文件提交/保存到暂存区
git add 文件名 文件名
将工作区中所有文件添加到暂存区
git add .
将暂存区指定文件添加到仓库区
git commit 文件名 文件名 -m '备注信息'
将暂存区所有文件添加到仓库区
git commit -m '备注信息'
git log
查看所有日志详细信息
git log --oneline
如果日志信息特别多,则该命令以查看日志简写方式
git log -数字
查看提交最近几次的日志信息
git log --oneline -数字
查看提交最近几次的日志简写信息
git status
输出的状态报告很详细
git status -s
以精简的方式显示文件的状态
文件未被跟踪状态:untracked
后端查看时提示:Untracked files
全部提交状:unmodified
后端查看提示:nothing to commit
文件修改状态: modified
后端查看提示:Changes not staged for commit
文件修改添加到暂存区状态:staged
后端查看提示:Changes to be committed
查看当前 Git 仓库中所有的分支列表
git branch
注:分支名字前面的 * 号表示当前所处的分支
新建功能分支
使用如下的命令,可以基于当前分支,创建一个新的分支,此时,新分支中的代码和当前分支完全一样:
git branch 分支名
注:执行完创建分支命令后。用户当前所处的还是当前分支
切换到自定义功能分支(切换到指定的分支上)
git checkout 分支名
新建分支并切换
创建指定名称的新分支,并立即切换到新分支上
git checkout -b 分支名
合并分支
git merge 分支名
注: 合并分支的时候,必须先切换到主分支
合并分支冲突问题(前提: 两个分支中的文件完全一样)
如果在两个不同的分支中,对同一个文件进行了不同的修改,Git 就没法干净的合并它们。 此时,我们需要打开这些包含冲突的文件然后手动解决冲突。
如果两个分支修改的是同一个文件,解决冲突后, 需要重新添加(git add .)和提交(git commit -m "解决冲突")
如果两个分支修改的是不同文件,直接输入:q即可
删除分支
当把功能分支的代码合并到 master 主分支上以后,就可以使用如下的命令,删除对应的功能分支:
git checkout -b 分支名
注:
- 主分支不能被删除
- 删除分支的时候必须写切换到主分支,然后删除
Github 上的远程仓库,有两种访问方式,分别是 HTTPS 和 SSH
https方式:
git remote add origin(自定义远程仓库名) 远程仓库地址
git push -u origin(自定义远程仓库名) "master"
注意:
-u 表示把本地分支和远程分支进行关联,只在第一次推送的时候需要带 -u 参数
git push -u origin(自定义远程仓库名) 本地分支名称:远程分支名称
如果本地分支名和远程分支名一致,可以简化命令
git push -u origin(自定义远程仓库名) 分支名称
已经将代码提交的远程仓库,再次推送时,可以直接使用 git push 推送代码到远程分支。
ssh方式:
新建秘钥:
ssh-keygen -t ed25519 -C "自己邮箱地址"
(然后按4次回车)
t 指定密钥类型,默认是 rsa
C设置注释文字
f 指定密钥文件储存文件名,不写默认为 id-rsa
查看秘钥: cat ~/.ssh/id_ed25519.pub
复制密钥,添加到码云
a.进入码云首页进入个人设置页面
b.左侧安全设置-->SSH公钥,将复制的密钥粘贴到公钥里
c.点击确定,输入账户密码,确认
查看秘钥是否配置成功: ssh -T git@gitee.com
推送到远程仓库:
git remote add origin 远程仓库地址
git push -u origin "master"
如果中途遇到询问,输入yes
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
如果推送报错:输入命令 git remote remove 地址别名
再次推送:输入命令 git push
get pull
:从远程仓库,拉取当前分支最新的代码,保持当前分支的代码和远程分支代码一致
本地已经有远程仓库代码,但是希望获取最新版本(拉取)
git clone 远程仓库地址
本地没有有远程仓库代码,希望获取远程代码(下载)
git remote show 远程仓库名称