1.1 git使用总结
1.2 git简介
强大且免费的分布式版本控制系统。
起源于linux社区,为解决世界各地linux开发者对于代码版本管理的需求
github/gitlab本质上是基于git的在线代码托管网站
1.3 git常规操作示意
每日开始工作,必须先拉取代码
每次提交前,先拉取代码
git add 与.gitignore
git add命令用于把指定文件/文件夹添加到暂存区域。一般进入项目工作目录使用git add .把当前目录添加到暂存区。在添加过程中,git默认会忽略掉.gitignore中指定的例外文件/文件夹。.gitignore配置语法如下:
开头表示注释。路径关系需要对照目标与.gitignore文件的位置
git reset head 和 git rm
简单理解,git reset head可用来清空暂存区,是git add的反操作。
git rm命令用来删除缓存区或工作目录的文件。--cached参数可用来指定
分支名/具体文件名,代表仅从缓存区移除文件,本地源文件保留。
git pull和 git push
git pull可看成是git fetch和git merge的合并命令。等同于执行git fetch origin和git merge FETCH_HEAD用来获取服务器上指定分支的代码,并与本地代码合并。建议写全命令如:git pull origin dev:dev
git push,建议写全:git push origin dev:dev,命令格式是git push origin <本地分支>:<远程分支>
版本回滚(有风险!)
git log -5或者git reflog查看最近的5次提/全部提交,选择要回滚的版本,复制版本号
运行git reset --hard ee6332c4cf3a05c600f5ab02077104b9d496cca1可回滚到指定版本(本地仓库) 运行git push -f origin master:master可强制提交到远程仓库。 !> git reset命令带上--hard参数后是危险的,可覆盖本地代码,导致工作丢失,所以要慎重使用。
git常见问题解决
![rejected]...(non-fast-forward) 方法一:git pull origin master --allow-unrelated-histories 方法二:git fetch origin master,git merge
FETCH_HEAD
cd existing_folder git init git remote add origin
http://git.definesys.com/tl/saas_dragon_wx.git
git@git.definesys.com:tl/tulong.git
git add . git commit -m "Initial commit" git push -u origin master
添加远程仓库新分支 git fetch origin saas git checkout -b saas origin/saas
本人创业团队产品MadPecker,主要做BUG管理、测试管理、应用分发, 网址:[www.madpecker.com],有需要的朋友欢迎试用、体验!
本文为MadPecker技术人员编写,转载请标明出处