Git使用方法
学习:
https://blog.youkuaiyun.com/caiyunlei91/article/details/52549960
https://www.cnblogs.com/huangting/p/11690796.html
https://segmentfault.com/a/1190000020600546?utm_source=tag-newest
文件4种状态
Untracked: 未跟踪, 此文件在文件夹中, 但并没有加入到git库, 不参与版本控制. 通过git add 状态变为Staged.
Unmodify: 文件已经入库, 未修改, 即版本库中的文件快照内容与文件夹中完全一致. 这种类型的文件有两种去处, 如果它被修改, 而变为Modified. 如果使用git rm移出版本库, 则成为Untracked文件
Modified: 文件已修改, 仅仅是修改, 并没有进行其他的操作. 这个文件也有两个去处, 通过git add可进入暂存staged状态, 使用git checkout 则丢弃修改过, 返回到unmodify状态, 这个git checkout即从库中取出文件, 覆盖当前修改
Staged: 暂存状态. 执行git commit则将修改同步到库中, 这时库中的文件和本地文件又变为一致, 文件为Unmodify状态. 执行git reset HEAD filename取消暂存, 文件状态为Modified
git模式开始之前的事儿:
配置公钥和密钥;
配置用户和密码;
创建本地文件和设置忽略文件提交至远程仓库
从远程仓库拉取文件:git clone 文件地址(ssh/http)
模式:
git两种模式:两者任选一种即可
Git GUI Here 模式 和 Git Bash Here 模式(命令行)
Git GUI Here 模式:
工作区:列出有改动的文件
暂存区:存放将要提交到版本库的文件,工作区中修改完成的文件应将放入暂存区
差异区:在工作区/暂存区选择文件会显示出改动前后的具体信息
提交的说明:提交时写入改动的相关说明
Repository(版本库) | Edit(编辑) | Branch(分支) | Commit(提交) | Merage(合并) | Remote(远端) | Tools(自定义操作命令) | Help(帮助) |
---|---|---|---|---|---|---|---|
Explore Working Copy | Undo | Create… (新建分支) | New Commit(创建一次新的提交,常规提交方式) | Local Merge…(分支本地合并操作) | Fetch from(从…获取) | pull | About Git Gui |
Git Bash | Redo | Checkout…切换分支) | Amend Last Commit | Abort Merge…(终止merge操作) | Prune from(从远端仓库获取更新;) | Add | Online Documentation |
Browse xq_ pro’s Files | Cut | Rename…(重命名分支) | Rescan | Remove Remote(删除与远端库链接;) | Remove… | Show SSH Key | |
Browse Branch Files… | Copy | Delete…(删除分支) | Stage To Commit | Add…(添加远端git库) | |||
Visualize xq. pro’s History | Paste | Reset…(重置分支) | Stage Changed Files To Commit | Push…(上传) | |||
Visualize All Branch History | Delete | Unstage From Commit(提交当前变更到本地) | Delete Branch…(删除远端分支) | ||||
Database Statistics | Select All | Revert Changes | |||||
Compress Database | Options… | Show Less Context | |||||
Verify Database | Show More Context | ||||||
Create Desktop lcon | Sign Off | ||||||
Quit | Commit |
Current Branch(当前分支): xq_ pro
Unstaged Changes(未缓存的改动)
Commit Message(提交描述): New Commit (新建提交) Amend Last Commit(修正上次提交)
Staged Changes(已缓存的改动) (Will Commit)(将被提交)
常规操作:
Rescan(重新扫描)
Stage Changed(缓存改动)
Sign Off (签名)
Commit(提交)
Push(上传)(从服务器上拉取最新代码)
Git GUI Here 模式常见操作:
第一步:从远程仓库拉取最新代码到本地仓库;
tools—>pull
注意:在进行第二步之前,检查是否切换到自己创建的本地分支上,在Current Branch(当前分支)上看,切换分支通过:Branch -->Checkout–>选中自己创建的分支上
第二步:如果时协同开发的话,记得查看同事是否对代码进行调整,如果没有改变,就不需要合并,如果修改了,记得将同事修改的代码合并以下:
Merge ---->Local Merge… —>选择要合并的分支
第三步:把自己创建的分支里面的代码提交到远程仓库上:通过常规操作四步:
Rescan(重新扫描)
Stage Changed(缓存改动)
Sign Off (签名)
Commit(提交)
Push(上传)(从服务器上拉取最新代码)
第四步:切换到主分支上,一般主分支就是master,重复第一步和第二步操作,查看是否在主分支上,在的话将自己创建的分支里面的代码合并到主分支上master,再切换到自己 创建的分支上继续开发
1.切换分支:Branch -->Checkout–>选中主分支(master),进行切换
2.重复第一步和第二步操作
3. 将自己创建的分支里面的代码合并到主分支(master)上,Merge ---->Local Merge… —>选择自己创建的分支名------.merge(合并)
4. 切换自己创建的分支上,继续开发: Branch -->Checkout–>选中自己创建的分支,进行切换,然后就继续开发
Git Bash Here 模式(命令行)
一.创建全新仓库
git init 文件名
二.克隆远程仓库
git clone 地址(ssh/https)
三.查看所有本地分支
git branch
四.创建分支
git branch 分支名(自己创建的)
五.切换到创建的分支上
git checkout -b 分支名(自己创建的)
开发中…
六.添加文件
git add . (如果后面跟.,说明时添加所有,如果后面跟文件:lindex.html,说明只添加这一个文件(指定文件))
六.提交文件
git commit -m “版本描述”
七.切换到主分支
git checkout master(默认主分支)
八.将自己分支上的代码合并到主分支上
git merge 分支名(自己创建的)
九.获取远程最新代码到本地仓库
git pull
注意;遇到矛盾冲突,要先解决矛盾冲突,解决完,才能执行下一步操作
十.上传代码到远程仓库
git push