第一次使用github:
第一步是:在本地创建master
第二步是:在远程创建master
第三步是:第一次向远程提交代码需要指定--set-upstream origin master 第二次就不需要指定了
1、On branch master
Your branch is based on 'origin/master', but the upstream is gone.
(use "git branch --unset-upstream" to fixup)
2、fatal: The current branch master has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream origin master
3、git push --set-upstream origin master
Counting objects: 203, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (191/191), done.
Writing objects: 100% (203/203), 114.85 KiB | 1.91 MiB/s, done.
Total 203 (delta 57), reused 0 (delta 0)
remote: Resolving deltas: 100% (57/57), done.
To https://github.com/chenggong12/github_openapi.git
* [new branch] master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.
虚拟环境:
1、指定python版本创建虚拟环境:
virtualenv heshang_beifen --python=python3.4
2、删除本地分支:
git branch -D release_heshang_v1
3、删除远端分支:
git push origin :heshang
4、拉取远端分支到本地并且创建切换且切换到新创建的分支上来(采用此种方法建立的本地分支会和远程分支建立映射关系):
git checkout -b 本地分支名x origin/远程分支名x
6、查看文件修改人信息
git blame +文件名
7、是选择性提交自己修改的内容,有些内容不是自己修改的不能提交
git add -p
8、第一次push的时候要这么push
git push origin 分支:分支 ,
9、查看当前区域和缓存区域的区别
git diff --cached
10、把远端的开发分支合并到当前的自己开发分支上
git merge origin/zgc_dev
11、(这个命令不常用)查一下?
git reset --hard origin/+分支名称
12、git push origin :分支 删除远端分支
13、git branch -D 分支 删除本地分支
14、回退版本:git reset
15、git diff --cache 这次commit和上次commit的变化
git diff 这次未commit也就是暂存区的和上次commit的变化
16、git reset --mixed 1c485ac769599b22ffab2f16f6f9dc92de6de13a 把add和commit的都撤回去
17、ls -lat Migration/versions/ 查询alembic生成时间顺序文件,方便查找
18、统计今天代码提交次数命令(从凌晨1点开始):
git log --author="$(git config --get user.name)" --no-merges --since=1am --stat
19、git remote -v 查看远程库的详细信息,包括拉取得网址等信息
20、git push origin cheng Git会把cheng分支推送到远程库对应的远程分支上 远程分支上没有,第一次推送的时候,远程分支会自动创建一个新的分支)
21、git stash list 查看所有被隐藏的文件列表(所有的都会查出来)
22、git stash drop 删除文件(删除一个,一个一个的删除)
23、增加的代码行数量:
git log --stat|perl -ne 'END { print $c } $c += $1 if /(\d+) insertions/'
按照commit次数统计:
24、git shortlog -sn 按提交作者统计,按提交次数排序
25、git log --author="faker" --oneline --shortstat 只看某作者提交的commit数
26、 git log --pretty='%aN' | sort | uniq -c | sort -k1 -n -r | head -n 5 按提交作者统计,提交数量排名前5(看全部,去掉head管道即可)
27、git log --pretty='%aN' | sort -u | wc -l 统计贡献者数量
28、git log --oneline | wc -l 统计提交数量
按照代码行数统计:
29、 git log --author="faker" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }' - 统计制定作者增删的行数
30、git log --until=1.minute.ago // 一分钟之前的所有 log
31、git log --since=1.day.ago //一天之内的log
32、git log --since=1.hour.ago //一个小时之内的 log
33、git log --since=1.month.ago --until=2.weeks.ago //一个月之前到半个月之前的log
34、git log --since ==2013-08.01 --until=2013-09-07 //某个时间段的 log
35、git blame 看看某一个文件的相关历史记录
36、例如:git blame index.html --date short
git 命令:
git add
git commit
git pull origin next 拉取远端分支
git 解决冲突
git commit
git push
Git merge b 将b分支合并到当前分支
git stash 切换别的分支。 完事后在切换回来 在git stash pop
Git reset —hard HEAD^ 回退一个版本
1、找到之前提交的git commit的id
git log
找到想要撤销的id
2、git reset –hard id
完成撤销,同时将代码恢复到前一commit_id 对应的版本
3、git reset id git. Log 的第二个
完成Commit命令的撤销,但是不对代码修改进行撤销,可以直接通过git commit 重新提交对本地代码的修改
所有操作都是在本地和远端分支名称一样的情况下进行操作的
4、撤销未提交的修改
有时我们需要撤销未提交的修改,那么输入 git checkout name.txt 即可。不过这种办法是只适用于那些还未执行过add命令的文件,如果已经add过,我们就需要先对其取消添加,然后才可以撤回提交。取消添加使用命令 git reset HEAD name.txt
5、git branch -m heshang heshang_cheng。 重命名分支
6、git branch -D dev 删除分支
7、别名:
alias paz="pyenv activate zgc"
alias pd="pyenv deactivate"