Git从入门到差不多会用
工作以后最先接触到的新东西可能就包括版本控制工具了,对Git的感觉是又敬又畏,敬是因为最初的时候都是跟着同事照猫画虎地通过开发软件图形化操作,大家都不太懂,也不知道这东西有多深奥;畏就是因为有过几次惨痛的代码被覆盖的经历。总之能够掌握Git的常用操作在工作中是非常有必要的,今天抽出时间把相关的基础知识整理一下。
一.Git简介
想来想去这部分估计想看的人能仔细瞅瞅,不想看的一眼都嫌多,那就这样吧
百度百科地址
http://baike.baidu.com/link?url=d7y8v6ipdY1kKXBOoV4NU3MyMZi62nekBGBPcnSN0-KneNSvtLznR7UT5JlAu0Qr81hfwTSdPBJQXV0QRrgiaq
二.安装Git
这块也尽量少废话,安装没什么坑
Linux下:
sudo apt-get install git-core
直接完成。
Windows下:
官方网址:https://git-for-windows.github.io/
或者别的地方下载安装包,傻瓜式安装。
三.创建代码仓库
很多情况下都是多人共同维护开发一个项目,提交代码自然要知道是谁提交的,所以首先要配置身份信息
git config --global user.name "your name"
git config --global user.email "your email"
同样的命令可以查询当前的用户信息。
创建代码仓库:
先在命令行下进入到想要创建仓库的目录下,然后
git init
结束。
此时目录下会生成一个隐藏的.git文件夹,用来记录本地所有Git操作的,可以通过 ls-al命令来查看。
想要删除代码仓库就直接删除该文件夹即可。
四.提交本地代码
提交本地代码:
首先添加想要提交的文件或文件夹
git add XXX
如果想提交该目录下所有文件,可以执行
git add .
然后执行提交操作
git commit -m "这里是注释"
commit 是提交操作,后面一定要有本次提交的注释信息。
五.辅助操作
忽略文件:
并不是项目文件中所有文件都要提交,如何把不需要提交的文件摘出来呢、
.gitignore文件就是用来做这个的。该文件中配置的文件都不会被提交,如
/app /* 所有app文件夹 */ /app/build /* app文件夹中的build文件夹 */ *.php /* 所有.php文件 */
查看修改内容:
Git另一个强大的功能就是能帮我们记住我们的修改记录。
在项目的根目录下输入:
git status
如果没有修改或者刚刚提交过,Git会提示没有课提交文件,如果修改过东西,则会显示我们修改的文件
查看修改具体内容:
git diff
/* 查看所有文件修改内容 */
git diff xxx
/* 查看xxx文件中修改的内容,其中减号代表删除的部分,加号代表添加的部分 */
撤销未提交的修改:
git checkout xxx
这样就能恢复未提交的文件到上次提交时的状态了。
但是如果执行过git add命令后想取消怎么办?
git reset xxx
可以取消添加。
查看提交记录:
git log
可以查看到你的提交记录,此时你就会明白commit注释的意义了。
也可以进行详细的查看:
git log xxx -1 -p
查看xxx文件提交信息,-1表示只显示一条信息,-p表示显示修改的详细内容。
六.分支
分支就是项目可以分出一支来与主项目同事并行开发,最后根据需要还可以再合并到一起,现实工作中是一个很重要的功能。
查看当前有哪些分支:
git branch
master是主干线
创建分支:
git branch version1.0
创建了一个名为version1.0的分支
分支与分支,master互不影响,除非合并。
合并操作:
git checkout master git merge version1.0
这样将version1.0分支与主干线合并,如果不再需要保留分支,可以删除
删除分支:
git branch -D version1.0
七.代码push到远程版本库
一般每天都需要将自己更新的代码push上去,这样可以让其他人查看或使用到最新的代码,也可以防止本地代码丢失造成的损失。
如何下载远程代码:
git clone https://github.com/xxx/xxx.git
提交到远程:
git push origin master
origin部分制定的是远程版本库的Git地址,master部分指定的是同步到哪个分支。
有push就有pull
git pull origin master
操作与push类似,作用是将远程代码同步到本地并与本地分支合并
git fetch origin master
fetch命令是pull的一部分,只有同步的功能,将代码存放在origin/master分支上,可以用diff查看修改内容,merge合并到分支。
八.小结
记住了上面这些简短的命令,git的日常使用基本就没什么问题了,一般提交步骤都是每天相同的,比如
git add xxx git commit -m "xxxxx" git push origin master exit
注意提交后是否有报错,最常见的就是与线上版本冲突,需要先将远程代码pull下来,合并时有不同一点点merge,然后重新push。
Git还有很多内容可以学习使用,今天就先到这里,基础也是很重要的。