Git的使用
Git的操作命令
Git的配置
git --version //显示版本
git --config --global user.name "用户名" //设置用户名
git --config --global user.email "邮箱" //设置邮箱
【注】:--local (只对仓库有效);--global (对登录的用户所有仓库有效); --system (对系统的所有用户有效)
【注】:不写参数默认 local
git config --list --global //显示config配置
【注】:git config --list --local ;git config --list --system
clear //清屏
Git 创建本地仓库
进入Git bash后
使用cd 文件名 找希望成为仓库的文件夹 (cd ../ 返回上一级)
找到文件夹后,
git init //创建本地仓库
之后Git就会在该文件夹中创建一个隐藏的 .git 的文件夹
ls -la //查看本仓库的所有文件 (类比Linux的命令)
git init XXX //XXX是文件夹名字,在当前文件夹内建立名为XXX的新仓库
往本地仓库里添加文件
git log //查看Git版本库的版本历史记录
git add XXX //将文件XXX进入暂存区,暂存区不是版本库
git status //查看提交,用绿色的显示 就是指暂存区;如果字体是红色,则意味着修改后没有提交
git commit -m "XXXX" //将暂存区的 所有文件放入版本库,XXXX 是注释不能省略
touch XXXX.XXX //创建XXXX.XXX 的文件 ,此文件没有被管理
vim XXX.XXX // 编辑XXXX.XXX文件(:wq 退出编辑模式)
版本库的概念
版本库又名仓库(数据库),可以简单理解成目录,在这个目录中所有文件都可以本Git所管理,每个文件的修改、删除操作,Git都可以跟踪,以便任何时刻都可以追踪历史,或者在将来“还原”。
1.远程仓库:配有专门的服务器,为了多人共享而建立的仓库
2.本地仓库:为了方便个人使用,在自己的电脑上配置的仓库
Git和GitHub
创建远程仓库——“github.com”
在GitHub上创建一个仓库
Git远程仓库推送
- 使用 remote指令添加到远程仓库:git remote add name url //name代表远程仓库的名字,url代表远程仓库的地址。name可以省略(缺省origin)
【注】:使用 git remote -v 来查看是否建立联系
- 使用push命令吧本地仓库推送到远程仓库:git push -u origin master //前面origin指名字,后面指master分支。固定写法
【注】:在后面的推送就不需要 -u 的参数了
【注】:推送的仓库下不能有子仓库;
【注】:如果联系建立错了 使用 git remote rm origin 命令重来
添加Git的READ.md文件
touch README.md //创建readme文件
git status
git add README.md //提交暂存区
git status
git commit -m "add README.md"
git status
git log
git remote -v//查看,没建立就建立了再push
git push //输入账号密码,会有两种情况,第一种邮箱和密码(弹出一个新的窗口),第二种是地址和密码(在黑框里操作)
Git远程仓库更新
本地仓库没有更新就上传,会报错;参考008.png
具体原因:由于本地也有某文件没有更新,但是远程仓库的同名文件更新了,此时在直接推送的话,会报错。
【注】如果所有都是最新的会返回 Everything up-to-date
解决方式:用 Ctrl+ C终止当前命令;使用git pull来拉取最新的文件
git pull --rebase origin master。
【提示】多人同时作业,那么作业完毕后所有人把修改推送到远程仓库,所以要养成习惯。push之前先pull
Git从远程仓库克隆
在实际过程中,往往是先有远程仓库,再有本地仓库。
git clone 远程仓库url //如果是私有的远程仓库,可能会输入密码
git remote -v //查看远程仓库
Git的使用技巧
1.给文件重命名:
可以手动改名;
也可以用命令改名:先clone->创建旧名字的文件(readme.txt)->添加到暂存区->放入仓库->目的:改旧名字(readme.txt)成(readme.md)->mv readme.txt readme.md(mv 旧名字 新名字)->删除旧文件(git rm readmd.txt)->添加新文件(git add read.md)->git commit -m "XXX"提交版本库 (这样做还没有提交到远程仓库)->push一下(请慎重考虑)
版本回滚方法:
git reset --hard 版本号(commit后面的一串字符) //版本回滚,要慎重。但此时远程仓库还是没有改,因为没有push。
改名的简便方法 :直接 git mv 旧名字,新名字 //直接就可以改名
2.正确删除文件:
rm readme.md
git add read.md
简便方式: git rm 要删除的文件
3.指定不需要Git管理的文件:
.gitignore 文件告诉 Git,push的时候可以忽略指向文件,需要每行指定忽略规则。
【注】” . “开头表示隐藏文件。
eg:
*.log //忽略所有.log文件
**/foo //忽略/foo,a/foo,a/b/foo等(双※表示匹配多级目录)
a/**/b //忽略a/b, a/x/b,a/x/y/b等
.DS_Store //忽略 .DS_Store文件
bin/ //忽略bin目录下的所有文件,但不忽略bin文件
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。