github安装后本地配置
在命令行输入
git config --globl user.name "your name"
git config --global user.email "your email"
git config 命令后面的--global 参数说明这台机器上所有的git仓库都会使用这个配置,也可以对不同的仓库使用不同的配置
创建版本库
什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。
所以,创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录:
mkdir learngit
cd learngit
将目录变成仓库
git init
没事千万别动手修改这个目录里的文件,会破坏仓库
编写文件
在learngit目录下编写一个readme.txt文件
- 第一步,用git命令告诉git,把文件添加到仓库
git add readme.txt
- 第二步,用命令git commit 告诉git,把文件提交到仓库
git commit -m "wrote a readme file"
为什么Git添加文件需要add,commit一共两步呢?因为commit可以一次提交很多文件,所以你可以多次add不同的文件,比如:
git add file1 file2 file3 git commit -m "add 3 file"
使用git status 可以查看仓库当前状态
git diff readme.txt查看作了什么修改
git log 查看提交记录版本回退
在回退版本时,先得知道当前版本是哪个版本,在git中,用HEAD表示当前版本,上一个版本就是HEAD^,上上个版本就是HEAD^^,往上100个版本就是HEAD~100
git reset --hard HEAD^
总之就是 git log 查看提交历史
git reflog 查看命令历史
git checkout -- readme.txt撤销所有更改
分枝管理
- 首先创建分支dev,然后切换至dev分支
git checkout -b dev
表示创建dev分支并切换至dev分支,相当于
git branch dev git checkout dev
git branch 会列出所有的分支,前面有个*号表示当前所在分支
在当前分支上修改README.md文件,并上传分支
echo "ohuo" >>README.md git add READ.md git commit cat README.md webconsole
ohuo
* 切换至主分支
git checkout master
cat README.md
webconsole
发现没有新增字段,因为此时没有合并分支
git merge dev
cat README.md
webconsole
ohuo
合并成功,可以删除dev分支
git branch -d dev
git branch
*master
使用分支提交代码更安全
小结
Git鼓励大量使用分支:
查看分支:git branch
创建分支:git branch <name> 分支名
切换分支:git checkout <name> 分支名
创建+切换分支:git checkout -b <name> 分支名
合并某分支到当前分支:git merge <name> 分支名
删除分支:git branch -d <name> 分支名
远程仓库管理
添加项目后并没有本地的库,那么现在将本地库上传到gayhub里
git remote add origin https://github.com/dorebmoon/webconsole.git
git push -u origin master
从远程库克隆至本地
git clone [email protected]:dorebmoon/webconsole.git
如果有多个人协作开发,那么每个人各自从远程克隆一份就可以了。
你也许还注意到,GitHub给出的地址不止一个,还可以用https://github.com/dorebmoon/webconsole.git这样的地址。实际上,Git支持多种协议,默认的git://使用ssh,但也可以使用https等其他协议。
使用https除了速度慢以外,还有个最大的麻烦是每次推送都必须输入口令,但是在某些只开放http端口的公司内部就无法使用ssh协议而只能用https。
原文地址:http://blog.51cto.com/dorebmoon/2334354