Git下载
https://git-scm.com/download/win
Git常用语句
$ git init //初始化仓库,然后关联远程仓库
$ git clone https://github.com/AutKevin/JAVA //克隆服务器仓库到本地,如果是为了直接克隆远程仓库到本地,直接执行此步骤,不需要init
$ git remote add JAVA https://github.com/AutKevin/JAVA //关联到远程库,JAVA为远程仓库命名的name,https://github.com/AutKevin/JAVA为url
$ git pull //获取远程库文件
$ git add . //添加要上传的文件,为.时表示当前文件夹下的所有
$ git rm file -r //删除文件
$ git commit -m 'first commit' //文件提交到仓库,添加备注
$ git push //推送到远程库
$ git push -u JAVA master //推送到远程仓库,JAVA为远程仓库的name,master为分支名
$ git diff //查看workspace和缓存区之间的区别
$ git status //查看状态
$ git remote -v //查看目前链接的远程仓库
$ git branch -a //查看远程仓库的所有分支
git help查看命令帮助
官方例子
初始化一个仓库
git init //初始化本地仓库 git add README.md //添加文件 git commit -m "first commit" //提交到本地仓库 git remote add origin git@github.com:AutKevin/ProjectName.git //将本地仓库关联到远程仓库,并将远程仓库名命名为origin git push -u origin master //推送到远程仓库名为origin的master分支
将本地一个已有的库推送到服务器
注意!!!这里的远程仓库一定要是新建的仓库,因为本地仓库刚init不是clone下来,如果直接-f push上去会导致远程仓库之前所有的内容消失。
如果是已经存在的仓库,要先pull下来再push,如果不想pull可以新建一个分支
git init //本地仓库初始化 git remote add origin git@github.com:AutKevin/ProjectName.git //添加远程仓库,并命名为origin。 git add . git commit -m "first commit" git remote -v //查看所有远程仓库名 git branch -a //查看所有分支名 git push -u origin master //推送到origin远程服务器的master主分支
git pull命令
$ git pull <远程库名> <远程分支名>:<本地分支名>
等同于先做了git fetch ,再做git merg。
git fetch origin online //从远程服务器origin,online分支拉到本地仓库 git checkout online //切换到online分支下 git merge origin/online //将拉到本地仓库的和工作空间合并
Git撤销git commit 但是未git push的修改
1. 找到上次git commit的 id git log 找到你想撤销的commit_id 2. git reset --hard commit_id 完成撤销,同时将代码恢复到前一commit_id 对应的版本。 3. git reset commit_id 完成Commit命令的撤销,但是不对代码修改进行撤销,可以直接通过git commit 重新提交对本地代码的修改。
Git下载指定文件夹下的文件
复制github中指定目录的url,将将“tree/master”改成“trunk”再运行svn checkout url即可
svn checkout giturl
创建分支
基础命令
查看分支:git branch 创建分支:git branch <name> 切换分支:git checkout <name> 创建+切换分支:git checkout -b <name> 合并某分支到当前分支:git merge <name> 删除分支:git branch -d <name>
一个分支代表一个功能点,开发完之后要new一个pull request(拉请求,用于告诉所有成员有新的功能被添加)。然后merge到master上,再删除分支。若是功能开发失败,直接删除即可,不影响其他分支开发。
git checkout -b dev //创建并切换到分支,相当于如下两个命令 /* $ git branch dev 创建分支 $ git checkout dev 切换分支 */ git branch //查看分支 git add readme.txt //添加文件 git commit -m "branch commit" //提交 git checkout master //切换到主分支 git merge dev //合并dev分支,merge用于合并指定分支到当前分支 git branch -d dev //删除本地dev分支 git branch //查看分支
git push [origin] --delete [branchname] //删除远程仓库分支,orign为远程仓库名,branchname为分支名
GitHub常用插件
Octotree 左侧形成树
OctoLinker 跳转到文件
enhanced-github 显示文件大小,并单独下载github中的文件
GitHub常用技巧
文件名搜索
源码浏览页面,按T键可以快速进入模糊文件名搜索模式
分支过滤
仓库主页,按W键可以快速进行分支过滤
快捷键提示
在任何界面,?键可以弹出快捷键提示
GitHub搜索技巧
搜索仅包含 fork过的项目,在搜索条件中加入fork:true或fork:only
搜索项目名称中包含关键字的 in:name
搜索描述中包含关键字的 in:description
搜索readme中包含关键字的 in:readme
搜索username中包含关键字的 user:USERNAME
搜索组织或机构名包含ORGNAME的 org:ORGNAME
按项目大小(单位K)搜索 size:n
根据fork数量搜索 forks:n
根据star数量搜索 stars:n
根据编程语言搜索language:LANGUAGE
根据路径(不含文件名)搜索 SearchPath in:path
例:
要搜索的内容 in:description language:java stars:>10 forks:>10 size:>100
参考
https://blog.csdn.net/kabulore/article/details/51801337
https://www.cnblogs.com/phpper/p/7136048.html