简介
Git是一个开源的分布式版本控制系统,它可以帮助我们更加方便地对软件开发过程中的各种程序代码、配置文件、说明文档等文件进行管理。
Git工作流程示意图如下:
Git命令在线模拟网站:Learn Git Branching
Git官方文档:Book
教程
下载与安装
安装
配置用户信息
此步骤十分重要,每一个Git提交时都会使用这些信息。
1 2
| git config --global user.name "名称" git config --global user.email "邮箱"
|
字段--global
表示全局,即当前用户范围内均有效,例如以上配置会出现在当前用户目录/.gitconfig
文件中。
配置SSH
生成密钥
在Git Bash中执行ssh-keygen -t rsa -C "邮箱"
命令,密钥默认生成在C:\Users\用户名\.ssh\
中。
添加私钥
在Git Bash中执行ssh-agent bash
命令并通过ssh-add "C:\Users\用户名\.ssh\id_rsa"
添加私钥。
编辑Git目录\etc\ssh\ssh_config
并针对不同网站(例如Coding)添加如下内容:
1 2 3
| Host *.coding.net HostkeyAlgorithms +ssh-rsa PubkeyAcceptedAlgorithms +ssh-rsa
|
标记主机
当使用过程中出现Are you sure you want to continue connecting (yes/no/[fingerprint])?
时,应手动输入yes
并回车。
添加公钥
在对应网站中添加C:\Users\用户名\.ssh\id_rsa.pub
内的内容。
初始化仓库
初始化后将生成.git
文件夹,记录所有的Git操作。
本地仓库
远程仓库
如果为私有仓库时,将会提示输入对应仓库平台的账号与密码。
忽略文件
当需要告诉Git哪些文件或文件夹不需要添加到版本管理中时,可以创建.gitignore
文件并写入对应地址,例如:
1 2 3
| note.txt #忽略note.txt文件 *.zip #忽略以.zip为后缀的文件 .vs/* #忽略.vs文件夹
|
保留文件夹
当一个文件夹内没有任何文件时,Git不会将此文件夹添加到版本管理中,当有需要时应在文件夹下创建.gitkeep
文件。
提交本地代码
1 2
| git add . #添加所有文件 git commit -m"提交描述信息" #提交
|
推送或拉取远程仓库
1 2
| git push #推送到远程仓库 git pull #从远程仓库拉取
|
查看修改内容
1 2
| git status #被修改的文件 git diff #被修改文件的内容
|
撤销未提交的修改
未添加文件
已添加文件
查看提交记录
1 2
| git log #查看所有历史提交信息 git log 提交id #查看指定历史提交记录
|
分支
查看分支
1 2 3
| git branch #查看本地分支(分支前带*的为当前分支) git branch -r #查看远程分支 git branch -a #查看本地和远程分支
|
新建分支
1 2
| git branch 分支名 #新建空分支 git checkout -b 分支名 #新建分支并复制当前分支
|
删除分支
1 2
| git branch -d 分支名 #删除分支 git branch -D 分支名 #强制删除分支
|
切换分支
合并分支
分支映射关系
1
| git branch -vv #查看分支映射关系
|
新建本地分支与拉取远程分支
1 2
| git branch -a #查看本地和远程所有分支 git checkout 远程分支名 #切换分支名的同时会自动追踪
|
参考资料