注重实战的可以直接点击示例查看~
创建
-
除了.git,其他文件均为工作区
-
除了工作区,还有暂存区、仓库
三个区域的关系
- 工作区
修改已有文件和新创建一个文件,如果不是添加到暂存区,是无法算放进git目录里面的。修改已有文件的放入未暂存区unstaged;新创建一个文件放入未跟踪区untracked。
- 从工作区到暂存区
git add
- 暂存区
- 从暂存区到仓库
git commit -m "add 文件名"
跟踪当前目录下的所有文件、文件夹命令
git add ./
或是git add .
- 仓库
- 修改进入仓库一次就变成了一次仓库提交记录
git log //查看仓库变动
git log --all --pretty=oneline --abbrev-commit --graph
- 版本回退
commitID可以通过git log获取
git reset --hard [commitID]
- 查看已经删除的记录
git reflog
约定文件不处理
//创建.gitignore文件
vi .gitignore
//在文件输入*.txt之类的通配符号
分支
几乎所以的版本控制系统都以某种形式支持分支。使用分支意味着你可以把你的工作从主线开发中单独拎出来进行单独开发
head指向的分支是当前分支
git branch //查看本地分支
git branch (-d) [分支名] //创建新分支,-d表示普通删除分支,-D表示强制删除
git checkout (-b) [分支名] //切换分支,-b可以创建并切换
git merge [分支名] //把分支合并到当前分支,遇到冲突自己决定存留
远程连接
git remote add origin(自定义仓库名字) (SSH) //连接远程仓库
git remote //查看已经连接的远程仓库数
- 推送本地仓库到远端仓库
git push [-f] [--set-upstream] origin(绑定的云端仓库名字) master(本地分支):master(云端分支)
一旦使用–set-upstream参数绑定后,剩下只需要git push就可以简单化push命令
- 查看本地分支和远端分支的关系
git branch -vv
- 克隆仓库
git clone (SSH)
- 把仓库的东西抓取到本地,但是不合并
git fetch origin(远程仓库名字) master(本地分支名):master(远程分支名)
git pull origin(远程仓库名字) master(本地分支名):master(远程分支名)
示例
若是想在CODING上实现团队合作,可按照以下步骤实现:
-
在自己的电脑上建立一个新目录
-
在该目录下右击,找到git bash,打开后敲git init使其变为仓库
-
在CODING项目中找到团队协作的代码仓库,点击克隆/下载,复制链接
-
用(git remote add origin 刚刚复制的链接 )命令连接刚刚的远程仓库
-
在你的CODING上建立一个自己的代码分支(我这边远程代码仓库分支名字叫做zhuxiaoying)
-
再用git pull origin master:master把远程仓库抓到本地仓库
8、这时候你在本地做的任何改变都会有记,我这里修改了README.md文件
9.、改完后把代码从工作区拉到暂存区git add ./
10、 再从暂存区拉到本地仓库, git commit -m "这次修改的说明“
11、最终再git status查看一下修改状态,就不会再出现红字(说明已经把修改的代码拉到本地仓库了)
10、 最后把本地仓库上传到远程仓库分支中git push origin master:zhuxiaoying
11.、在CODING中合并请求
这样你修改的代码就可以被团队中的人看到啦!!