一.git安装与配置
安装
- Linux下Ubuntu
sudo apt-get install git git-core
- Windows下
安装git bash工具。
配置
生成RSA秘钥用作ssh通信,将秘钥上传给服务器。
ssh-keygen -t rsa
2.配置用户名git config -global user.email "xxx@qq.com" git config -global user.username "xxx"
二. 获取和创建项目
1.建立git仓库
在需要建立git仓库的目录下,执行
git init
2.第一次获取服务器的项目
git clone url [name]
例如
git clone www.github.com myproject
myproject参数是对这个项目的重命名,可选,不写就是默认名字。
这样我们就拉取了整个项目了。可以将这个项目导入到eclipse下,进行开发了。
ps:一般项目都不上传.project和.class文件,可以从其他项目复制一个。
三. 提交与同步项目
1.提交文件前需要做的工作
git status -s #查看各文件状态
-s参数表示以简要形式输出(可选)
执行这个命令后,我们可以看到几种状态,分别是:
- ??: 未追踪,新文件
- A: 已添加
- M: 已修改。红色表示提交后进行的修改。绿色表示修改已经添加
- MM: 已修改。一绿一红,添加修改后又进行了修改
- AM: 添加后又进行了修改
- D: 已删除
- ??: 未追踪,新文件
git diff
对比缓存文件和修改文件。
可以查看自上次添加(git add)后,你对文件进行的操作,比如加一行,删除一行等。红色是删除内容,绿色是添加内容
可以使用git diff file 查看单个文件
其他参数
– cached 查看已缓存的改动(缓存与仓库)
– HEAD 查看工作区和仓库的差异
– stat 查看摘要git log
显示提交日志。包括用户,时间,提交说明和快照(HASH值)
2.添加和提交文件
位置图说
git add file
添加文件到缓存。git add .
可以添加所有修改文件(新文件无效)git commit -m "This is the first commit"
将已缓存内容(即已添加的文件)提交到git本地仓库。-m 后面是对这次提交的说明git push
提交到git远程仓库,此时会提示输入密码,输入即可
经过上面三个步骤就将修改和添加的文件上传到了远程git服务器仓库了。
这三个步骤并非要连在一起操作,看需求。git add后表明此文件已经缓存起来,后面的修改将被监控。git commit 表明已经保存到本地仓库了,将生成一个快照(一个hash值),以后就是通过这个快照进行回滚等操作。
3.拉取最新代码
从远程仓库拉取最新代码。需先提交本地修改,拉取时代码将合并,同时修改的地方产生合并冲突
git pull
4.文件删除与移动
git rm file
将文件从缓存区移除。工作区也将删除
若要保留工作区的文件可用 git rm file – cachedgit mv file1 file2
1.重命名,2.移动文件。
5.文件恢复
- 已执行git add,用缓存区file替换工作区file:
`shell
git checkout file
场景:已执行git add ,然后对文件修改。希望回到修改前
-使用HEAD指向的文件替换缓存区和本地工作区“
git checkout HEAD file
使用git reset命令
场景:已修改,并执行了git add ,执行此命令回到修改前
-删除缓存区文件
git rm -cached file
本地工作区文件不变
-撤销提交
git reset -hard 939EFFKSIJ339DF
-回滚版本
git revert 939EFFKSIJ339DF
说明:并不会清楚提交记录。若已push,可以使用此命令,然后重新提交和push,达到回滚服务器的目的。
恢复到快照版本
`
git branch
新建分支
git branch BranchName
切换到某分支
git checkout BranchName
新建分支并切换到该分支
git branch -b BranchName
删除分支
git branch -d BranchName
分支合并(当前分支和branchName合并)
git merge BranchName
合并冲突
出现conlict标志需要修改后再提交
原文地址:http://blog.csdn.net/u013565368/article/details/52689209