引用博客:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
1. 提交代码
先下载: git clone git@github.com:userName/skills.git
修改代码后,
将文件从工作区提交到暂存区:git add fileName
将文件从暂存区提交到本地版本库:git commit -m "log"
从本地版本库提交到远程仓库:请看下面 git push
2. 在本地回退版本
回退到指定版本,重置暂存取和工作区: git reset --hard Commit_ID
回退到上一版本,只重置暂存区: git reset HEAD^
回退到上上版本,不会重置暂存区: git reset --soft HEAD~2
撤出暂存区的文件到工作区: git reset HEAD fileName
3. 提交代码
查看远程主机名,以及网址: git remote -v
查看所有分支名: git branch -a
更新代码: git pull
git pull 远程主机名 远程分支名:本地分支名
提交代码: git push
git push 远程主机名 本地分支名:refs/heads/远程分支名
特别说明:
git push remote_name local_branch:refs/for/remote_branch
// refs/for 的意义是我们提交代码后,是需要经过code review之后才能merge到服务器的,而refs/heads 不需要。我在repo服务器下测试有效,在gitHub上测试没效果
4. 创建和合并分支
查看分支: git branch
创建分支: git branch branchName
切换分支: git checkout branchName
创建+切换分支:git checkout -b branchName
合并某分支到当前分支:git merge branchName
删除分支:git branch -d branchName
5. 查看提交后的代码日志以及修改
使用 git log 可以参考,介绍的很详细
https://blog.csdn.net/north1989/article/details/53355346
推荐命令:
git log -5 --oneline
git log --oneline --graph
git log -5 --name-only
git show commit_Id file_name
git show commit_Id --name-only
git log --author=UserName
git log --commitor=Name
git log --since=2018-09-12
git log --since=1days
注:除了--since,还有 --after --before --until
git log --after="2018-11-12 12:13:15" --before="2018-12-01 00:00:00"
取值可以是xxxdays , xxxweeks , 2016-11-25 , 或 2 years 1 day 3 minutes ago
简单介绍:
git log --name-only -2
--name-only 仅在提交信息后显示已修改的文件清单; -2 则仅显示最近的两次更新;
git log --pretty=oneline
只是用一行显示每次提交的日志,等同于git log --oneline
git log -p
-p 选项展开显示每次提交的内容差异,相当于git show 了所有提交文件;
参考博客:https://www.git-scm.com/book/zh/v1/Git-基础-查看提交历史
6. 其他
1>git revert commit_ID
#撤销某一次的提交,这相当一个重新提交??
2>暂存本次修改,并更新后,再提交。
使用 git stash 将修改“储藏”起来;
使用 git pull 拉取远程库上最新的代码;
使用 git stash pop 重新应用储藏;
修改冲突;
提交(git add);
7. 推荐阅读的博客,关于git:
http://blog.csdn.net/zeroboundary/article/details/10552115
http://www.cnblogs.com/qianqiannian/p/6008140.html