您的位置:首页 > 其它

Git使用

2016-05-17 21:45 246 查看



git多人协作开发

$ git 多人协作开发介绍

需要有一个服务器
除了在本地提交,还需要往服务器提交
需要添加 .gitignore 文件
有可能产生冲突,需要手动解决

$ git 多人协作过程

初始化一个 git 服务器
添加
.gitignore
文件
项目经理创建项目
开发人员克隆服务器版本库到本地
开始开发

git init --bare //建立一个git服务器代码仓库
git clone <服务器地址> //建立一个git服务器代码仓库
git status //查看 git 工作区和暂存区 文件状态
git add . //将文件从工作区移到暂存区
git commit -m "注释文字" //将文件从暂存区提交到代码区,完成一次版本提交
git push //把本地版本库提交到服务器,类似 svn 的 commit
git pull //把将服务器的最新版本拉取到本地,并合并代码,类似 svn 的 update
git config --global push.default simple/maching //默认simple,只提交当前分支

$ 冲突解决

养成先执行
git commit
命令后;再执行
git pull
;最后执行
git push
的好习惯;

二 标签管理
$ tag 的作用

tag 可以对 git 版本库中阶段性的,重要的版本做一个标记(比如说 appStore 上线版本);
我们可以通过 tag 快速地定位到某个重要版本;

$ tag 的相关操作

tag 的相关操作包括,添中、删除、查看 tag。将 tag 提交到服务器等

git tag –a 1.0 –m “name” //添加新标签
git tag //查看所有tag
git tag -n // 查看所有 tag,带注释
git checkout 1.0 //切换到某一标签版本
git show 1.0 //查看某个标签及其对应版本的详细信息
git tag -d 1.0 //删除一个版本
git push origin 1.0 //将版本推送到服务器


三 分支管理
$git 分支

分支就是从主干(主分支)的某一个版本分出来的一个支干
每一条支干上的操作相互独立
分支之间可以相互合并
在解决 bug, 开发新功能时,可以用分支

分支的操作

分支的操作主要涉及分支的创建、切换、删除、提交、合并等

git branch //查看当前分支
git branch -a //查看所有分支
git checkou -b dev //创建一个分支 dev, 并切换到该分支
git push origin dev //在本地创建一个分支
git checkout master //切换到分支 master
git branch -D dev //删除本地 dev 分支
git git push origin :dev //删除远程 dev 分支
git merge dev //将 dev分支合并到当前分支


$ git命令总结

//git 本地版本管理命令
git init //初始化一个本地git代码仓库
git confit user.name //配置用户名
git config user.email //配置用户邮箱
git status //查看 git 工作区和暂存区 文件状态
git add . //将文件从工作区移到暂存区
git diff //比较当前版本和之前版本的区别
git commit -m "注释文字" //将文件从暂存区提交到代码区,完成一次版本提交
git log //查看截止到当前版本的历史记录
git reset --hard HEAD^ //将代码回滚到之前版本
git reflog //查看所有操作过的历史记录

//多人协作开发命令
git init --bare //建立一个git服务器代码仓库
git clone <服务器地址> //建立一个git服务器代码仓库
git push //把本地版本库提交到服务器,类似 svn 的 commit
git pull //把将服务器的最新版本拉取到本地,并合并代码,类似 svn 的 update
git config --global push.default simple/maching //默认simple,只提交当前分支

//tag及分支命令
git tag –a 1.0 –m “name” //添加新标签 git tag //查看所有tag git tag -n // 查看所有 tag,带注释 git checkout 1.0 //切换到某一标签版本 git show 1.0 //查看某个标签及其对应版本的详细信息 git tag -d 1.0 //删除一个版本 git push origin 1.0 //将版本推送到服务器

//分支相关命令
git branch //查看当前分支 git branch -a //查看所有分支 git checkou -b dev //创建一个分支 dev, 并切换到该分支 git push origin dev //在本地创建一个分支 git checkout master //切换到分支 master git branch -D dev //删除本地 dev 分支 git git push origin :dev //删除远程 dev 分支 git merge dev //将 dev分支合并到当前分支

$ git注意事项

.git不能修改
提交之前,需要先配置个人信息
在项目新建之前,需要添加 .gitignore文件(工作当中是项目经理的活)
push 之前,先执行
commit
, 再执行
pull
的操作
项目开发过程中,未经允许,不能修改别人的代码
重要的版本打 tag

$ git扩展

配置别名: git 的的命令可以通过配置别名的行式,使命令变得更简单
比如说:`$ git config --global alias.st status` 意思是给 `status` 命令配置一个别名 `st`, 敲git st就表示git status

$ git config --global alias.st status
$ git config --global alias.co checkout
$ git config --global alias.ci commit
$ git config --global alias.br branch
$ git config --global alias.unstage 'reset HEAD'
$ git ci -m "bala bala bala..."

$ git unstage test.py
实际上Git执行的是:
$ git reset HEAD test.py

$ git config --global alias.last 'log -1'
这样,用git last就能显示最近一次的提交:

甚至还有人丧心病狂地把lg配置成了:
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"
来看看git lg的效果:

git-lg


配置文件

配置Git的时候,加上--global是针对全局的 git 仓库起作用的,如果不加,那只针对当前的仓库起作用。

配置文件放哪了?每个仓库的Git配置文件都放在.git/config文件中:
$ cat .git/config
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
precomposeunicode = true
[remote "origin"]
url = git@github.com:michaelliao/learngit.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
[alias]
last = log -1


全局的Git配置文件放在用户主目录下的一个隐藏文件.gitconfig中:
$ cat .gitconfig
[alias]
co = checkout
ci = commit
br = branch
st = status
[user]
name = Your Name
email = your@email.com


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: