玩转git,开发人员git必知必会操作!
前言
只所以发这篇文章,是因为昨日应朋友之邀来写一篇关于git的简单操作。朋友之前是使用的svn作为版本控制,现公司使用git作为版本工具,由于时间问题,我就把工作中常用的git命令简单整理下,方便朋友尽快属性git命令。附图一张,以示纪念。
哈哈哈,碰到熟人才搞笑呢!
正题
进入主题,将从一下十个方面进行git介绍。
1. 如何创建一个git项目
在gitlab或GitHub上创建一个新项目-》创建空白项目-》输入项目名称
本地操作:获取代码,后自动与远程分支绑定
git clone 地址
cd 刚下载的目录
touch README.md
git add README.md
git commit -m “add README”
git push -u origin master
备注说明:一般创建项目结束后,会给你相应的创建本地代码仓库的code示例。
2. 已有项目如何与远程git仓库绑定
cd existing_folder
git init
git remote add origin git远程地址
git add .
git commit -m “Initial commit”
git push -u origin master
3. 获取已有git仓库代码
这个没啥好说的就是git clone
git clone git://url
4. 创建/切换/删除分支
创建、删除分支都可以在远程仓库做。如图
当然也可以在本地仓库做。如下
// 查看当前分支,显示有变更的文件
git status
使用git checkout切换分支
// 创建分支,创建的是空白分支
git checkout -b “分支名称”
// 切换分支
git checkout 分支名称
创建本地分支
切换到创建的分支
将创建的分支推送到远程分支.PS:当你有一个本地分支以及对应的远程分支(如果不小心删除了远程分支。不要慌,在你本地分支强推上去,远程分支就会重新创建。)
创建与远程分支管理的分支
使用 git branch查看新建分支是否成功。
// 显示本地分支
git branch
// 显示所有分支(包括远端分支)
git branch -a
** 号标识当前使用的分支标记。*
*当然借助idea工具也可以帮助我们快速创建分支信息
删除分支
删除远程分支:
git push origin --delete 分支名称 --远程分支
git branch -d 分支名称 --可以删除本地分支(在主分支中)
不可能在自己的分支把自己杀死!你懂得
切换到任意分支删除本地分支,执行上述命令,通过git branch -a 查看,确实已删除 分支名称 分支信息。
5. 更新/提交代码
// 查看代码是否修改
git status
//暂存已经修改的代码
git stash
// 获取代码 修改直接拉下来于本地代码merge,且产生一个commit,也就是merge commit
git pull = git fetch + git merege
// rebase 并不会产生一个commit提交 并且是提交历史记录显得干净清爽
git pull --rebase == git fetch + git rebase
//添加提交所有代码
git add .
//提交多个文件代码空格,当然你也可以分两次添加
git add 文件1 文件2
git commit -m 'commit message'
//只有乜有push代码追加的提交会被认为是一条commit 漏提文件追加 算一次提交
git commit --amend
//推送代码默认推动到当前分支
git push
//推送到指定远程分支head 指向test
git push origin HEAD:test
git push origin test== git push origin test:test
//强制推送 慎用
git push -f
一般IDE里面都会有便捷操作
点commit标识提交
点revert标识回滚当前代码,恢复代改动前的代码
6. 本地暂存/版本回退/版本回滚
可以通过git stash 多次暂存代码,git stash pop 连续释放。跟栈一样先进后出。
// 暂存代码,输入命令后所有修改的代码都进入暂存区,需手动释放才能显示修改文件
git stash
// 释放代码
git stash pop
//使代码回到本次提交的情况 commit 只需要前8位就行了
git reset commitId(需要回退的commitid号)
//是代码回滚即撤销本次提交
git revert commitId(需要撤销提交的的commitid号)
版本穿梭
Git reflog 打印你每次的操作记录
7. git log使用
8. gitinore 常见配置
//保存git密码
git config --global credential.helper store
git config --list // 查看配置信息
--查看
git config user.name
git config user.email
--本项目的
git config user.name myName // 自己的用户名
git config user.email myEmail // 自己的邮箱
--全局的
git config --global user.name globalName // 全局的用户名
git config --global user.email globalEmail // 全局的邮箱
9. gitinore不生效解决方案
gitignore
git rm -r --cached . (git rm -r -f --cached . 强制删除缓存)
git add .
git commit -m "update .gitignore"
git token 登录
第一次:设置与git连接
git remote add origin https://your token@github.com/url.gradelDemo.git
##`在这里插入代码片` 删除远程仓库
git remote rm origin
#已设置连接的修改别名即可
git remote set-url origin https://your token@github.com/url.gradelDemo.git