1. 备份文件
每当我们对文件有修改的时候,提交我们的修改给版本管理工具,进行一个保管,万一哪一天我们的电脑坏了,还能从备份里面恢复回来,其实备份是我们项目开发中最基本的事情,因为每天的工作结果都保存在文件当中,如果某一天有一些不可预料的因素导致我们的文件丢失了,这种损失是相当大的。
2. 记录历史
记录几点,几分,谁对文档进行了修改。
3. 版本回退
版本工具会把我们每一次提交都做一个备份。
4. 多端共享
类似苹果的iCloud服务,我们可以在不同的设备上拿到最新的文件。
5. 团队协作
版本工具能够帮我们解决冲突,将负面影响降低至最小。
下载网址:https://git-scm.com/downloads
添加(add)、提交(commit)、远程推送(push)、远程克隆(clone)、远程更新(pull)
其它命令:branch、tag、remote、checkout、merge、log、status、fetch、rebase等
先add到本地的缓存,再commit到我们的本地仓库,再push到我们的远程仓库。
1. 基于本地进行完整的版本管理,不强依赖远程仓库。
2. Git把内容按元数据方式存储,而SVN是按文件。
3. Git分支和SVN的分支不同。
1. 如何用git创建一个项目:
其中,.git文件夹包括了整个的版本管理的功能。
git branch: 列出本地已经存在的分支,并且在当前分支的前面用"*"标记
创建说明文件: README.md(如果是git到码云上,可以不用创建)
在命令行输入如下代码:git add README.md -> git status
这时就会显示有一个新文件等待提交,输入如下代码:git commit -m "the first commit"
git记住账号和密码:
每次操作都需要输入用户名和密码感觉很繁琐,解决方法,在本地的工程文件夹的.git下打开config文件
添加:
[credential]
helper = store
再输入一次用户名密码后就可以保存住了。
在git创建项目时出现
是因为在创建git文件夹的时候信息不完善导致的
1. git init
2. git config user.name "someone"
3. git config user.email "[email protected]"
4. git add *
5. git commit -m "some init msg"
上述内容有待完善!!!
在commit到我们的本地仓库的时候,报错。
处理的方式:
git config --global user.email "你的邮箱"
git config --global user.name "你的名字"
输入完成之后再接着执行git commit即可成功!
提交之后的状态:
查看git所在项目是否有远程仓库的地址:git remote
添加远程仓库的地址:
公司一般都会有git的私服,用gitlab
添加成功之后,第一次提交:git push origin master 正式上传至码云中,若上传有问题,可以试试 git push origin master -f 表示舍弃线上的文件,强制推送。
将码云的项目git到本地
git clone https://gitee.com/~
git add -A
执行git add .时报错提示:
warning: LF will be replaced by CRLF in ......
The file will have its original line endings in your working directory.
解决方法:
原因是路径中存在 / 的符号转义问题,false就是不转换符号默认是true,相当于把路径的 / 符号进行转义,这样添加的时候就有问题。
如何解决冲突:
在push到远程仓库之前先git pull一遍。
git pull命令用于从另一个存储库或本地分支获取并集成(整合)。git pull命令的作用是:取回远程主机某个分支的更新,再与本地的指定分支合并,它的完整格式稍稍有点复杂。
此时,发现有冲突。并且Automatic merge failed; fix conflicts and then commit the result.告诉我们自动合并失败了,需要我们手动合并。CONFLICT (content): Merge conflict in README.md这句话告诉我们哪个文件存在冲突。
然后将远程的那部分删掉,保留我本地的,然后再->git add . ->git commit -m "CONFLICT README.md"
再push到远程,这时冲突就解决了。
pull其实干了两件操作:
fetch:更新
merger:合并