Home Php C# Sql C C++ Javascript Python Java Go Android Git Linux Asp.net Django .net Node.js Ios Xcode Cocoa Iphone Mysql Tomcat Mongodb Bash Objective-c Scala Visual-studio Apache Elasticsearch Jar Eclipse Jquery Ruby-on-rails Ruby Rubygems Android-studio Spring Lua Sqlite Emacs Ubuntu Perl Docker Swift Amazon-web-services Svn Html Ajax Xml Java-ee Maven Intellij-idea Rvm Macos Unix Css Ipad Postgresql Css3 Json Windows-server Vue.js Typescript Oracle Hibernate Internet-explorer Github Tensorflow Laravel Symfony Redis Html5 Google-app-engine Nginx Firefox Sqlalchemy Lucene Erlang Flask Vim Solr Webview Facebook Zend-framework Virtualenv Nosql Ide Twitter Safari Flutter Bundle Phonegap Centos Sphinx Actionscript Tornado Register | Login | Edit Tags | New Questions | 繁体 | 简体


10 questions online user: 12

62
votes
answers
48 views
+10

Install ruby gem globally from github repository

I want to install a ruby gem globally (sudo gem install capybara-webkit) but I want it to be installed from the master in its github repository. I know this can be done using bundler but I want to do it from the command line because I'm coding mainly using pry.

up vote 62 down vote accepted favorite
沙发
+620
+50
  1. 下載來源:

    git clone https://github.com/thoughtbot/capybara-webkit.git
    
  2. 建立寶石:

    cd capybara-webkit && gem build capybara-webkit.gemspec
    
  3. 安裝它(文件名/版本可能會有所不同):

    sudo gem install capybara-webkit-0.14.1.gem
    

I would leave the sudo off of step 3, (stackoverflow.com/questions/2119064/…) but otherwise, great answer! The one other thing to note is that the .gemspec file isn't always exactly the same as the name of the gem or the directory it's in, so just double check the filename before step 2. – Scott Schupbach Jul 24 '17 at 16:54

0
votes
answers
44 views
+10

在Eclipse egit中檢出github發行版?

0

我該如何設置egit從github上發佈發佈版本,而不僅僅是主發佈版本?在Eclipse egit中檢出github發行版?

我在找一個版本0.4.0。 在附件中,簽出的項目不會從遠程屬性中獲取,rebase,遠程和上游分支未設置。我從標籤中獲得了這個結帳,但它不正確。

This checkout wasn't pulled from remote

+0

爲什麼你認爲這是不正確的?提交'23d3472'被標記爲'v0.4.0',並且當前分支'v0.4.0-branch'的狀態是提交'23d3472'。 – howlger

+0

純粹是因爲選擇該分支時,其屬性窗格沒有上游或其他。 (並不是說我打算在現階段回到這個項目) – MaxRussell

沙发
0
0

你有已簽出正確的提交:你當前分支v0.4.0-branch的頭部提交23d3472被標記爲v0.4.0

在Git a 標記引用提交,而不是分支。一個提交可以在多個分支中,甚至是多個分支的頭部。對於發行版,如果發行版不打算維護,通常會使用標籤而不是分支。相反,在特定分支的最新階段/提交(避免合併或重新分配)之上,歡迎提供捐款,主要在masterdev(eloper)分支上。

你的情況,有助於VCVRack/Rack

  1. 在GitHub上的VCVRack /機架庫(假設你是不是這個項目的成員)
  2. 在Eclipse 克隆分叉的GitHub知識庫
  3. 在Eclipse中提交併推送您建議的更改爲單個提交master分支的分叉的GitHub庫(目前,有177 commits to master since the v0.4.0 tag
  4. 在GitHub上創建一個pull request在此基礎上提交
0
votes
answers
47 views
+10

壁球在GIT合併後提交分支

1

嗨我有一個分支穩定,其中包含其他分支的合併提交。結構如下:壁球在GIT合併後提交分支

提交歷史:

Commit 1 - Branch 1 commit 1 ------------- Hash Code 1 
Commit 2 - Branch 2 commit 1 ------------- Hash Code 2 
Commit 3 - Branch 2 commit 2 ------------- Hash Code 3 
Commit 4 - Branch 2 commit 3 ------------- Hash Code 4 
Commit 5 - Branch 3 commit 1 ------------- Hash Code 5 

分公司1,2,3被刪除並已與穩定的融合。有沒有什麼辦法,在提交歷史,我可以壁球提交3和4,提交

期望的結果:

Commit 1 - Branch 1 commit 1 ------------- Hash Code 1 
Commit 2 - Branch 2 commit 1 ------------- Hash Code 2 
Commit 5 - Branch 3 commit 1 ------------- Hash Code 5 

當我做git的變基-i,它給出了墊底的空操作scrren。 enter image description here

+1

你可以做'git的變基-i'執行[互動變基(HTTPS ://git-scm.com/book/en/v2/Git-Tools-Rewriting-History)。 – crowchirp

+0

它給了我noop。我也附上了截圖。 – Akshay

+1

您可能需要正確指定要將其重定向到什麼內容。 'git rebase --help'來弄清楚。 – Mort

沙发
0
2

你可以做git rebase -i來執行一個交互式rebase。

git rebase -i HEAD~4 

變化

pick commit 1 
pick commit 2 
pick commit 3 
pick commit 1 

這個

pick commit 1 
s  commit 2 
s  commit 3 
pick commit 1 

保存更改並做git push -f

+0

謝謝..它正確完成。你保存了我的日子 – Akshay

+0

另外,你能告訴我,假設這個分支受到保護,並且不必要的提交來自一個請求。分支被刪除併合並。有什麼辦法可以修改不必要的提交將會消失的pull請求。 – Akshay

+0

PR一直從'source'到'target'分支,一旦合併到'target'後刪除'source',PR變得不存在並且不能被改變。任何後續更改必須進入單獨的PR。 – crowchirp

75
votes
answers
31 views
+10

Steps to Troubleshoot “django.db.utils.ProgrammingError: permission denied for relation django_migrations”

What are some basic steps for troubleshooting and narrowing down the cause for the "django.db.utils.ProgrammingError: permission denied for relation django_migrations" error from Django?

I'm getting this message after what was initially a stable production server but has since had some changes to several aspects of Django, Postgres, Apache, and a pull from Github. In addition, it has been some time since those changes were made and I don't recall or can't track every change that may be causing the problem.

I get the message when I run python manage.py runserver or any other python manage.py ... command except python manage.py check, which states the system is good.

up vote 73 down vote accepted favorite
沙发
+730
+50

我能夠根據問題基本上,需要將postgres特權重新授予db用戶。就我而言,那是我在虛擬環境設置文件中設置的用戶。從命令行(或postgres)運行以下命令,其中 mydatabase dbuser 應該是您自己的數據庫和用戶名:

  psql mydatabase -c“在SCHEMA public to dbuser的所有表格中全部授予;” psql mydatabase -c“在SCHEMA public to dbuser中對所有序列進行全部授權;” psql mydatabase -c“
     
			
        

哇,謝謝你!一直在尋找解決方案。當我已經遷移了數據庫然後我嘗試設置geodjango時,我遇到了這個問題。 - qasimalbaqali '17年3月9日22:35

當我用一個用戶創建數據庫然後更改數據庫的所有者時,我遇到此問題。這些表保留了舊所有者導致此錯誤的原因。修復我刪除了數據庫,使用posgres用戶重新創建它,為新用戶授予所有權限並運行遷移。 - 壁虎於18年3月24日18:20

我不知道怎麼做,更容易重新創建整個數據庫=) - geckos 4月2日'18在19:57

關於在Saleor上安裝Saleor的Saleor官方文檔的人可能需要這個答案。我做到了。 - Rik Schoonbeek 3月8日19:27

+20
<p>如@ user3062149所述,這可能是由於嘗試遷移Django的psycopg2用戶不是表所有者的數據庫表而引起的。例如,如果你的項目有<code> settings.py </ code> </ p> <pre> <code> DATABASES = {'default':{'USER':'my_username',#... < / code> </ pre> <p>您需要檢查Django遷移中涉及的表是否由<code> my_username </ code>所有。要在<code> psql </ code>中執行此操作,可以使用<code> SELECT * FROM pg_tables ORDER BY tableowner; </ code>。這使用視圖<a href="https://www.postgresql.org/docs/current/static/view-pg-tables.html" rel="nofollow noreferrer"> <code> pg_tables </ code> < / a>,“提供對數據庫中每個表的有用信息的訪問”。<code> pg_tables </ code>是Postgres的<a href="https://www.postgresql.org/docs/current/static/catalogs.html" rel="nofollow noreferrer"> <em>系統的一部分目錄</ em> </a>,即關係數據庫管理系統存儲模式元數據的位置。</ p> <p>假設有問題的表歸<code> other_username </ code>所有(不是<code > my_username </ code>)。</ p> <p>要更新所有者,您需要使用<code> - username = other_username </ code>調用<code> psql </ code>,然後更改所有者:</ p> <pre> <code> ALTER TABLE public。&lt; table_name&gt; 所有者都是my_username; </代碼> </ PRE>
0
votes
answers
45 views
+10

Github GraphQL API:我如何收集特定用戶的存儲庫?

2

我試圖獲取登錄名「somelogin」用戶的存儲庫。Github GraphQL API:我如何收集特定用戶的存儲庫?

它會返回所有的存儲庫,但我只想獲得他擁有的存儲庫。因爲新的API使用GraphQL我做不到。

目前我使用:

{ "query": "query { user(login:"furknyavuz") {repositories(first: 50) { nodes { name url }}}}" }

+0

你的意思是要排除叉?使用'isFork:false' –

+0

是的,我想排除不屬於我的所有存儲庫。 你能給我正確的使用它嗎。 –

沙发
0
2

您可以使用isFork: false排除叉。在explorer

{ 
    user(login: "furknyavuz") { 
    repositories(first: 50, isFork: false) { 
     nodes { 
     name 
     url 
     } 
    } 
    } 
} 

,捲曲:

curl -H "Authorization: bearer token" -d ' 
{ 
    "query": "query { user(login: "furknyavuz") { repositories(first: 50, isFork: false) { nodes { name url } } } }" 
} 
' https://api.github.com/graphql 
0
votes
answers
53 views
+10

使用vue項目部署到github頁面的問題

1

我想部署一個vue-cli項目到github頁面,我按照本網站上的說明和github支持。使用vue項目部署到github頁面的問題

delpoy VUE-CLI到github上的網頁: https://medium.com/@mwolfhoffman/deploying-to-github-pages-with-vue-webpack-cli-5b2ba17f14a0

配置的github頁 https://help.github.com/articles/configuring-a-publishing-source-for-github-pages/

設置 - >源 - >主/文檔

在根目錄的/ docs文件夾的存儲庫

不遵循存儲庫命名方案username.github.io或orgn ame.github.io

這裏是我的倉庫:https://github.com/leewei05/blog

但結果一直給我404,仍然不知道我的問題,請大家幫忙!

沙发
0
0

原來,我已經得到了錯誤的配置路徑,這裏是部署一個新VUE-CLI項目的Git樞紐頁中的步驟。

(你得安裝NPM和VUE-CLI第一)

  1. $ VUE的init的WebPack [項目]
  2. $ CD [項目]
  3. $ NPM安裝
  4. 去你的配置/index.js文件
  5. 修改構建部分是這樣的:

    build: { index: path.resolve(__dirname, '../docs/index.html'), assetsRoot: path.resolve(__dirname, '../docs'), assetsSubDirectory: 'static', assetsPublicPath: '', productionSourceMap: true, devtool: '#source-map', productionGzip: false, productionGzipExtensions: ['js', 'css'], bundleAnalyzerReport: process.env.npm_config_report }

  6. $ NPM運行建立

  7. 推到您的GitHub庫
  8. 去設定在你的倉庫
  9. 找到你的GitHub的網頁部分,然後從 「主」更改源 - >「主/ docs'
  10. 您的頁面應該位於'https://[userName].github.io/[repositoryName]/#/'
  11. 祝您好運!
0
votes
answers
52 views
+10

如何自動多拱泊塢窗圖片建造

2

我已經dockerized在GitHub上一個應用程序的NodeJS。我的Dockerfile基於官方的nodejs圖像。官方節點回購支持無縫地支持多種架構(x86,amd64,arm)。這意味着我可以在不同的機器上構建完全相同的Dockerfile,從而爲相應的體系結構創建不同的映像。如何自動多拱泊塢窗圖片建造

所以我試圖提供相同的架構無縫地爲我的應用程序了。但是如何? 我的目標是儘可能地自動化。 我知道我理論上需要創建一個docker-manifest,它充當docker-repo並將最終用戶docker-clients重定向到合適的圖像。

多克爾轂本身可以監視GitHub庫和開球自動構建。這將照顧amd64圖像。但是剩下的架構呢? 還有一種叫做'TravisCI'的服務,我想可以在qemu的幫助下照顧手臂的構建。 然後我認爲這兩個回購可以通過清單回購被靜態引用。但是這仍然讓一些架構未能實現。

但是,使用多種服務/建築相同的應用程序的方式覺得不妥。有誰知道這個問題更好更完整的解決方案嗎? 它基本上通過幾臺機器運行相同的dockerfile並將它們記錄在清單中。

+0

的人們是如何解決這個 – Chris

+0

我不會嘗試作出了回答,我也爲此而努力也有興趣,我結束了使用實際的設備和cron。見https://blog.slucas.fr/blog/docker-multiarch-manifest-hub-1/ – seblucas

沙发
0
0

與泊塢18.02 CLI您可以創建多拱清單,如果你啓用了客戶端實驗功能他們推到了碼頭工人開始登記。我能夠使用VSTS,並在構建完成後爲多拱形標籤創建自定義構建任務。我遵循這種模式。

docker manifest create --amend {multi-arch-tag} {os-specific-tag-1} {os-specific-tag-2} 
docker manifest annotate {multi-arch-tag} {os-specific-tag-1} --os {os-1} --arch {arch-1} 
docker manifest annotate {multi-arch-tag} {os-specific-tag-2} --os {os-2} --arch {arch-2} 
docker manifest push --purge {multi-arch-tag} 

在附註中,我在我的自定義VSTS任務中打包了18.02 docker CLI for Windows和Linux,因此不需要安裝docker。 manifest命令似乎不需要docker守護進程正常工作。

0
votes
answers
37 views
+10

Squash提交閉合請求

0

我有合併和關閉請求。之後,我刪除了該分支。並且該分支的所有提交現在都顯示在合併分支的歷史記錄中。現在有一個選項可以在Git中恢復分支,但我真正想要的是壓縮該PR的某些提交,以便它不會顯示在合併分支的提交歷史記錄中。假設最初PR有5次提交併成功合併並關閉。 有沒有辦法壓縮合並和關閉的公關中的一些提交?Squash提交閉合請求

+0

https://stackoverflow.com/a/47048569/2303202 – max630

+0

我的問題是,我不能直接在合併的分支上更改提交歷史記錄,因爲這是受保護的分支。有沒有什麼辦法可以從封閉的請求或恢復的分支中重寫歷史? – Akshay

+0

不,如果一個提交是某個分支的歷史,那麼它是如何發生的。 IT無法將其刪除。 – max630

沙发
0
0

你會使用git rebase -i <hash of first commit before merge>,然後你可以選擇擠壓相關的提交。注意這是重寫實際的提交歷史記錄,所以如果你與其他人共享存儲庫,那麼在完成這些操作後你會有不同的提交,這是潛在的危險領域。

板凳
0
0

的唯一方法是改變在master分支歷史(假設你的feature/branch被合併上master):

$ git checkout master 
$ git reset --hard <commit-before-merge> 
$ git push -f origin master 

現在你可以修改你的歷史:

$ git checkout feature/branch 
# Hypothesis: 5 commits to squash together 
$ git rebase -i HEAD~5 
# Rewrite your history: reword, squash, etc... 

在這一點,也許你應該重新分配特徵/主分支

$ git rebase master 

一旦你滿意你的分支歷史,你可以把上游:

$ git push -f origin feature/branch 

然後創建GitHub上一個新的拉請求,並把它合併

重要事項

每個人跟蹤分支master將不得不頒發git pull --rebase以重新與上游重新同步它們的歷史記錄,其被改寫爲:

$ git checkout master 
$ git pull --rebase origin master 

這將防止任何衝突和/或合併提交將上游歷史視爲理所當然(接受theirs),發出快進。

這同樣適用於分支仍取決於master,這將需要相應地重建基礎:

$ git checkout feature/branch-still-depending-from-master 
$ git rebase master 

希望這有助於;)

0
votes
answers
32 views
+10

Github Windows客戶端將cpp文件檢測爲二進制文件

1

我在使用Windows客戶端的Github時遇到了一個小問題。我在我的存儲庫中有一個名爲「dllmain.cpp」的文件,當我點擊它時,「這個二進制文件已經改變」。因此,出於某種原因,它將其檢測爲二進制文件而不是代碼文件,這意味着它不會跟蹤代碼更改。 我唯一的想法是,它可能是因爲名稱中的「dll」,但我認爲它應該檢查文件擴展名而不是文件名。Github Windows客戶端將cpp文件檢測爲二進制文件

有沒有什麼辦法解決這個問題,所以我可以將它檢測爲.cpp文件呢?

沙发
0
0

您可以將它作爲文本添加到您的.gitattribute文件中。

但二進制標識不是基於文件名或擴展名。你應該看看你的cpp文件及其編碼。可能有一些特殊字符,可能不可打印。

0
votes
answers
43 views
+10

在GitHub上更新我的簡歷

1

我使用GitHub頁面託管我的個人網站一段時間。今天,我更新了我的簡歷,並希望將其推送到遠程存儲庫。在GitHub上更新我的簡歷

我原來的簡歷被命名爲'Resume.pdf'。我的新更新的簡歷再次被稱爲'Resume.pdf',我已經把它放在我的本地存儲庫中,替換原來的。除此之外,我沒有做任何其他改變。但是現在我的Git Shell拒絕承認我的本地存儲庫有任何更新(並且自從它是一個.pdf文件就可以理解了)。所以,當我運行git status命令時,它不會顯示任何要添加的內容,因此也不會提交任何內容。

我想知道是否有某種方式可以強制承諾並推送新的簡歷。此外,這種強有力的承諾是否有效(從誠信的角度來看)?

+0

聽起來很奇怪,因爲git知道要管理二進制文件。如果我是的話,我會仔細檢查它是否是你正在嘗試更新的簡歷 – Pavel

沙发
0
0

仔細檢查,如果該文件不會被忽略:

git check-ignore -v -- Resume.pdf 

如果可以用git add -f -- Resume.pdf添加。