该博客内容纯属个人学习理解,如有错误欢迎修改。
一、打开命令行程序
二、设置用户名和邮箱及部分设置(只需初次使用时设置)
1、设置用户名和邮箱
$ git config --global user.name "<用户名>"
$ git config --global user.email "<电子邮件>"
也可以通过配置文件修改
用户目录下的gitconfig文件
2、设置git以彩色显示(非必须)
$ git config --global color.ui auto
3、为git命令设置别名(非必须)
$ git config --global alias.别名 命令
注意事项:
命令行默认不支持显示ASCII字符以外的字符
使命令行支持显示其他字符:
<em>$ git config --global core.quotepath off</em>
当提交信息包含非ASCII字符时建议使用外部编辑器来替代-m
外部编辑器必须能与UTF-8和换行码LF兼容:
<em>git config --global core.editor "\"[使用编辑区的路径]\""</em>
三、新建数据库
1、当前位置创建文件夹
$ mkdir tutorial
2、进入新建的文件夹中
$ cd tutorial
3、将该文件夹设置为本地数据库
$ git init
四、提交文件到本地数据库
1、确定工作树和索引状态
$ git status
(显示新建文件不在索引内)
2、加入索引
$ git add <file>
可用空格区分,用来加入多个文件
$ git add .
可以用来加入所有文件
3、提交文件到本地数据库(""里面作为提示信息,以便在远程数据库中检查是否上传成功)
$ git commit -m "tip"
利用status查看是否有新的变更需要提交
$ git status
利用log查看数据库中的提交
$ git log
使用GUI提交
$ gitk
五、本地数据库与远程数据库交互
将本地记录推送至远程数据库($ git push)
将网上数据复制到本地($ git clone )
将远程数据库中的修改同步到本地数据库($ git pull)
1、push具体操作
给远程数据库取一个别名(name写上远程数据库的别名(默认为origin),url写上对应的地址)
$ git remote add <name> <url>
将本地数据库上传至远程数据库(name就是给数据库取得别名,branch代表的是远程数据库中的不同分支(分支之间是独立的))
$ git push <name> <branch>
之后是输入自己的账号密码,等到命令行操作结束后便可以在对应的url中查看到远程数据库的变化
2、clone具体操作
将远程数据库中的内容clone到你当前路径下的对应文件夹中(url对应的远程数据库,name是指你给本地文件夹取得名字)
$ git clone <url> <name>
3、在克隆的数据库中进行push
将内容进行修改的克隆文件加入索引
$ git add <filename> 或git add .
提交到本地数据库中
$ git commit -m ""
将本地数据库变更上传至远程数据库(可以忽略name和branch的内容)
$ git push
4、从远程数据库中pull
$ git pull <name> <branch>
注意:pull只是将远程数据库的最新变更内容与本地进行同步,并不是将远程数据库中的内容完全更新到本地数据库中。例如:本地数据库中你删除了一个文件,远程数据库删除了另一个文件;当你将远程数据库pull过来时,他只会将它删除的文件更新到本地文件并不会将本地的删除的文件还原。
六、合并冲突
当你在通过pull将远程数据库中的内容同步到本地直到下一次push的过程中有其他人对远程数据库进行了push时,你的push将会被拒绝(合并的时候,git会自动合并);也存在无法自动合并的情况,git会在冲突的部分通过“<<<<<<<<”和“>>>>>>>>>>”将发生冲突的地方圈出来;==将本地数据库和远程数据库的冲突划分开,==上面为本地数据库内容==下面为远程数据库内容。