沒有Fork而是直接拷貝代碼到自己的倉庫並進行修改增加新的功能,是否算抄襲?

原作者的倉庫:dvajs/dva

修改後的倉庫:hwep/rva

國內很多 很多 java公司 都是工程師 架構師 對開源java springmvc 在做自己的封裝 然後著作權寫自己的名字!連開源協議都有沒有!

我拿dva的框架,增加對rxjs非同步的支持, 做成自己的框架,需要上傳npm ,重名名為 rva ,方便在公司使用

java程序員封裝類的時候 不都要重命名么?

原作者 的 LICENSE 是MIT

including without limitation the rightsto use, copy, modify, merge, publish, distribute, sublicense, and/or sellcopies of the Software,

明確說清楚了 可以修改,整合,發布,甚至可以拿去賣!

開源真好!
我在rva中 的 LICENSE 也是MIT

我在readme中明確說明了 是對dva的修改

還說了 如果你不使用rxjs,最好去使用dva,而不是我的rva

再說

在dva中添加 rxjs這個非同步解決方案的可行性。

首先 dva 是基於redux的框架!

dva作者是這麼設計框架的,搬來了 redux, redux-saga ,and react-router@2.x. 組裝起來。

既然 dva 是基於redux的框架

redux強大之處 ,就在於 他有豐富的中間件!

redux-saga,與 redux-rxjs 都是redux的中間件。

這是兩個不同的非同步解決方案!

而redux 可以同時使用 很多中間件! 而且運行流暢!

dva只是對 redux-saga 這個一步解決方案支持,但是,不支持 rxjs

而我需要dva支持 rxjs。於是我就對 dva進行修改。

我寫的rva不僅支持 rxjs 還能與 redux-saga 同時運行

如果你修改後要在項目中package.json中使用,你是不是自己npm publish,npm 不能重名,我不能再叫dva!

那有人問了,你為什麼不fork,然後pullrequests,你連怎麼參與開源項目都不會。

在dva源碼中增加了rxjs的支持,我寫了很多代碼!。超多!

我pullrequests,也要看作者願不願意使用我寫的代碼!
如果作者不願意呢。而我項目中又急著用! 難道我就不能發布自己的rva? 換你呢? 你發布rva么?

我已經發郵件給dva作者,如果 dva作者增加了對rxjs非同步的支持。那麼我就把rva刪掉!

這就是說我抄襲的人,找不出錯誤,就說我代碼寫的難看。然後貶低我,抬高自己。我跟他說了3遍,你那麼寫會拋出錯誤,他還倔,最後還是說了你的代碼沒錯。他連我寫的源碼都看不懂,就立刻跑出來說我抄襲,你代碼寫的丑

如果你敲了一晚上代碼,提交完後,運行無bug,同事跑過來對你說,你的代碼寫的真丑,你應該像我這麼寫。有這樣的同事,你是不是很高興?

你們去下載 npm install rva 這個裡面有MIT LICENSE 然後看時間!

你們就知道 我發布 LICENSE 是在 他說我抄襲之前!

你污衊我 抄襲

我增加新功能 抄襲什麼了?

fork 只是一個複製代碼方便快捷的工具!

如果fork複製了 就不是抄襲啦?

搞笑吶?

我自己有實力 下面某些人 你們早晚 會被我打臉的 中國人就愛整人


大神搞了個 rva 肯定要去圍觀下啊

(槽點自尋)

發現 resume 進去瞧了瞧

Webb Huang個人網站

接下來,本小透明就要要開始搞事啦

#1 canvas 捕魚達人 Fishing Joy

首先是作者描述

簡陋版捕魚達人
可以發炮打魚
canvas 製作,性能保障
移動端可用
還在偶爾會添加新功能
面向對象編程

看上去很厲害的樣子,當然要去 github 上搜搜看啊

發現 shiruiWeb/fishJoy

和題主的相似度比較高 hwep/hwep.github.io

猜測是用的同一套模板

ps:看作者源碼發現備註 husky,不知道是不是題主本人

#2 移動端布局 仿照 100du ?

hwep/hwep.github.io

首頁-妙味課堂www.miaov.com

培訓班 interesting

#3 resume

https://hwep.github.io/resume

追蹤到個人 blog github_squad的博客 - 博客頻道 - CSDN.NET

唯一一篇文章創建於 2017-02-26

奇怪的是英文版的 resume 和 太狼 發的截圖意思上有很大出入,不知道是不是我理解錯誤

#end

一個兩年工作經驗的人

在 20 天前

新建了一個 github 賬號

新建了一篇 blog

投遞簡歷後被懟產生衝突

遂知乎掛之

貴圈


題主好,作為一名高三前端狗,我無意評判你的代碼水平,只想做修改病句題,畢竟我很快就要高考了。標點符號一般不是高考的考點,所以我就暫時忽略啦~

你知道 那是我下班後自學 我能把公司的源碼曬出來么? 我下班後學習做demo有錯么? 誰不是學前端拿別人的demo來做的??!

「你知道 那是我下班後自學」

先做縮句:「那是自學」——什麼是自學?上下文推測,「rva是上下班自學」,則搭配不當。應改為:「你知道,那是我下班後自學(寫出來的)」。

「誰不是學前端拿別人的demo來做的??!」

這句話是語序顛倒+動詞重複,正確的修改是「誰不是拿別人的demo來學前端的」。

我會使用rxjs有錯么? 少了個使得溜溜的 是因為我不想被人找茬 真的很煩對別人的簡歷指指點點 發簡歷是弱勢的 看簡歷的人都是強勢的 簡歷是希望得到別人的認可! 可是對一個人的簡歷是主觀評價 這就是為什麼 你會被這家公司要,那家公司不要

「真的很煩對別人的簡歷指指點點」

這句話事實上我認為結合上下文,應該是「很煩對別人的簡歷指指點點的人」,缺少賓語,畢竟不能「很煩指指點點」。當然這句本身我認為應該是不算病句的,高考不會出這句。

「發簡歷是弱勢的」

「發簡歷(這個行為)是弱勢的」,動賓短語(發簡歷)被形容詞(弱勢)修飾,缺少賓語。應該是,發簡歷的人是弱勢的。

「簡歷是希望得到別人的認可! 」

「簡歷是希望得到別人的認可!」主賓的語意不通,添加動詞「寫」和「簡歷」一起構成動賓短語作主語。應為「寫簡歷是希望得到別人的認可」,故根據上下文修改。—— 感謝@Gadfly Su

「可是對一個人的簡歷是主觀評價 」

這句話事實上我連意思都沒看懂……改不出來

「這就是為什麼 你會被這家公司要,那家公司不要」

算了我已經改不動了……

從題主的文字里,我感覺到了題主可能存在閱讀障礙與寫作障礙。實話實說,建議題主重新從九年義務教育開始學習起,這樣題主才可能理解知乎的回答都在說些什麼。


我沒看你們的GitHub,也沒看你們的代碼,我就八卦一下,如果大家認為沒有幫助,就摺疊吧。

我看完了整個回答加評論,沒明白題主一直在激動什麼,你註冊了一個小號來知乎上說這個事,那就是讓大家評論的,結果好像大家都有點意見,而你又一個個的噴回去。那這個意思就是不想讓大家隨便評論,而是讓大家支持你的意思咯。

但是問題是知乎不是用來干這個的吧……而且你至始至終都是咆哮體,看的真的眼疼,話說你這麼激動有用么?

況且你不能對每一個評論的,不贊成或者不支持你的回答都說成人家思想有問題,嫉妒啊,胳膊肘亂拐啊什麼的吧,對於這樣的情況好像有個形容詞叫歇斯底里,或者氣急敗壞?

我覺得你應該在你的大號上面發個說說,這樣看到的評論的,點贊的都說粉絲,會好點 。祝好


事情的起因是群里的一個朋友收到了題主的簡歷,然後被鎮住了,趕緊發出來大家欣賞。於是我出於好奇點進去看了一眼:

簡歷片段:

寫出來的代碼:

這是我建議他改的代碼:

fromSaga() {
return this::switchMap(action =&> Promise.resolve(null)
.then(() =&> action.payload)
.then(payload =&> ({ ...action.payload, payload }))
)
}

具體我寫的對不對,好不好可以另開一帖討論。然後題主直接沒看懂我寫的代碼,然後指責我寫的代碼會報錯,有問題,然後我去 jsbin 開了一個 fragment 給他看,他改口說結合 redux-observable + redux-saga 後會報錯(並不會。

全程指責了他兩點:

1. license 裡面只有他自己的大名 (然而他並不懂我在說什麼

2. RxJS 部分的代碼寫的巨丑而且一點都不像"玩的66的" (然而他連我代碼都沒看懂,一直說我寫的會報錯

雞同鴨講。

所以題主

能把我「污衊你」的回復給大家看看嗎,證明我污衊過你。


問題還是出在 LICENSE 上,如果你在 LICENSE 里保留原有的 dva 版本,就不算抄襲。

同樣的回答見:如何看待《寫在 Element 一周年之際》中 element-ui 指責 iview 抄襲這件事?

讓你 Fork,而不放上原來的 LICENSE

附 License 清單:

以及:《當你決定把代碼開源之前先選擇一個合適的 License - 知乎專欄》


之前某群里捅出了這個事情,然後我連夜圍觀了一下。

對dva增加rxjs 支持 · Issue #1 · hwep/rva

題主造輪子的分享精神我是滋磁的,但是修改也要遵守基本法。

可以看出題主是玻璃心,而且有一定程度的受迫害妄想症,認為別人都針對你。

這並不代表我們要遷就題主自己的臆想。

題主的簡歷已經很厲害了,可惜我要看的時候已經不見了。

後來發生的事情就更有意思了。

第二天,我發現 repo 都沒了。嗯,也不能說沒了,出現了個同名 repo。

而且題主關了 issue 以後,又反覆改標題。不是欲蓋彌彰,就是小孩鬥毆。

我之所以要趟這趟渾水,是因為題主的語文素養實在差到一種境界。

題主的文字,不用看內容,一股小學生作文的味道便會散發出來。

比如題主天馬行空的標點符號系統,跟自成一派的代碼縮進風格相互呼應。

這對我的視覺甚至味覺,產生了嚴重的污染。

詳見 沒有Fork而是直接拷貝代碼到自己的倉庫並進行修改增加新的功能,是否算抄襲? - 知乎


哎,這個問題邀請我回答……我說代碼吧。

首先,你努力折騰東西的行為是應當被鼓勵的,不企圖造輪子的程序員,很多內心都是沒激情的,不過你折騰的方式確實有些值得探討的地方。

需要明確的是,dva是一種基於redux-saga的封裝、簡化庫,內部機制是基於generator,這個機制本身是不太適合跟Observable一起運作的。

如果存在一個generator函數,比如dva中的effect,外部對它的使用是pull操作,而Observable則是push,所以,想要兩者配合,最大的可能是Observable在外,generator在內,反之不行。

(兩層東西分別是Observable,generator的四個組合中,只有外面generator,裡面Observable不行,理由參見這篇:繼續探索JS中的Iterator,兼談與Observable的對比)

但是你想要這麼做,就等於徹底改變了dva的運行機制。在redux-saga的能力中,已經提供了call,put,take,race等各種操作,理論上能夠組合出任意邏輯了,再引入Observable的必要性也沒有那麼大,在dva中使用RxJS,最多只不過當做對Promise的簡單增強,更多能力是施展不開的。RxJS加上regenerator的polyfill,什麼都不幹,構建大小已經幾百k了,作為一名前端開發人員,即使在現在這個時代,文件大小也還是得稍微考慮下。

所以,這個改進其實方向是不太合適的,如果你要想繼續做,我覺得倒不如拿redux-observable按照dva的形態封裝了(雖然我對這個也持保留意見,主要因為我不太認同Redux……)

另外,他是我前同事,只是說話口氣直一些,並不在大公司,不是螞蟻的,也才畢業不到一年,根據我的認識,RxJS的水準肯定是比你高的,所以也談不上欺壓你,沒有必要這麼激動。

螞蟻金服體驗技術部大量招前端、NodeJS開發人員,也同時在替一些業務部門招聘前端,歡迎各位有興趣的來聊聊。


既然看到了,忍不住講幾句無關的話

  1. 討論問題應該局限在問題本身,不要人身攻擊,核心點兩點,一你license不對,二這個代碼寫的爛,都是實事的話,沒什麼可以爭論。
  2. 寫簡歷真的不要吹牛逼,玩的66的這種話,沒有真的本事不要說,實事求是。不能客觀認清自身所處的水平,就無法真正的行之有效的繼續進步。
  3. 認識錯誤的態度,認錯不是一個簡單的對不起,沒有誠意就自己記不住。如果公開場合說錯了技術問題,承認並且做內省檢討,有助於你在技術路上走的遠一些。
  4. 技術人應該簡單一些,保留一點對技術的初心和對技術的尊重。而不要熱愛撕逼。


看了一圈,rva的作者可能是個外國人,在用百度翻譯和大家聊天的,大家對外國友人和善一些!!

你們說的技術都太高深了……看得我都插不進嘴…


fork也只是網站提供的一個方便的功能而已,只要你複製了license,然後readme.md或者代碼裡面說明了,就不是抄襲。


又見這類事件啊。很早我的時間線就出現這個話題了,我就知道一定會有人把我的這篇文章(當你決定把代碼開源之前先選擇一個合適的 License - 知乎專欄)貼出來的。

github 上的 code、commit、issues、pr 是不會說謊的,但是我看了問題描述裡面的 issue,卻沒有找到。於是我翻了話題日誌和 github commit 歷史。

這個問題創建於 2017-04-12 午夜,可以歸到 4 月13 日凌晨。

而項目的第一次 commit 卻是 2017 年 4 月 13 日 上午 7:38。

因為 repo 的所有代碼提交和 issues 都有記錄,所以作者很聰明的選擇了刪除項目,然而又不忍放棄項目,再次重新建了同名的項目。如果之前沒有人 fork 過這個項目,那麼之前發生的事我們就不得而知了。

現在唯一的一個 issue 就是:呵呵 · Issue #1 · hwep/rva

而作者對標題的修改總有一種欲蓋彌彰的感覺。

其實如果按作者標題裡面的描述來講,作者還是有些占理的。

你有理你怕什麼?你有理你刪庫幹嘛?

就好比偷盜現場,別人說你涉嫌偷盜,你說沒有,然後別人剛問你幾句話,你就拚命的破壞現場。

好吧,雖然你複製刪庫改評但我相信你是個好程序員。


就像我一直說的,很多人只是碰巧寫了程序,別腦補程序員就應該 aabbcc


這裡面其實包含了至少3個事件。
1.
fork還是copy 只是獲取代碼的方式而已。
2.
稱讚題主的分享精神,批判題主 LICENSE ,我大概看了下 rva的LICENSE中刪除了dva的 LICENSE的作者署名和版權,這個是對dva作者的不尊重,這裡應該是算違反MIT了。(如果題主不理解MIT,請去理解並請補上原作者的LICENSE,否則就是抄襲嫌疑)
3.
另外我也覺得那些直接上來就說別人 代碼丑,巨丑,心胸狹小。的很不厚道。將別人的簡歷貼上來逐條批鬥有些過分。

然後題主就爆炸了,開始全屏掃射。我只能說,這樣會讓你沒朋友的。


雙方就是壓根沒什麼溝通,一上來就互射導彈。要用自己的堅定意志消滅對方,甚至還開始集結戰鬥人員了。

真的好奇,如果是線下見面會怎麼樣。。期待(☆▽☆)

----


把別人的代碼dump到自己的代碼庫並加以修改,這個過程就是叫fork. 不在於是是否點了github上fork那個按鈕。

Fork (software development)

In software engineering, a project fork happens when developers take a copy of source code from one software package and start independent development on it, creating a distinct and separate piece of software.

你的做法顯然就是一個fork行為。所需注意的無非是滿足原作者對fork的要求。


和流氓是沒有道理可講的。


我給前(hao)一(jiu)陣(qian)魔改了給騰訊雲 COS 加了一個功能:

步驟是:

  • fork 騰訊雲的倉庫
  • 魔改
  • 提 pr
  • (-&> 官方沒有鳥我)
  • 用 fork 的倉庫發了一個魔改包到 npm

明顯有更好的方式,題主自己不會玩,並且使用了錯誤的 MIT 卻一個勁覺得自己是正確的,被懟很正常啊。


民科開始學編程了?


昨晚看了下你的項目,今天又看了下,發現多了個LICENSE,少了個issue。

很佩服你對開源的貢獻,你這被說是抄襲也的確不符合你的本意。當然在issue中指責你的前輩我也認識,本身專業能力和在rx方面的造詣也很深,這並不是表明我支持他的一切言論,只是想回答一下你對他能力的質疑,其他的也不好多說了。

另外正確的流程別的知友也說了,你也別太揪著MIT不放,畢竟你的MIT不是源項目的而是你這個項目的,按道理也是不對的...真是心疼你...建議你了解一下各個協議。

既然issue已經刪了那就代表這事差不多過去了,祝你能成功加入BAT,你可以跟民工叔談談,給個內推什麼的豈不美哉(逃


Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.


哇,什麼仇什麼怨,你是在用生命黑前端、螞蟻金服和java啊。

最近本來準備招幾個前端試試新技術的,現在被你搞的心裡慌慌的!


推薦閱讀:

Sublime Text 3中如何一次性修改變數及其引用?
在瀏覽器端,安全控制項跟 JS 加密的密碼有何區別?
在大城市面試5k-10k的前端工程師需要注意什麼?
為什麼大家都不喜歡用正則表達式?
前端開發工程師都能做什麼?

TAG:JavaScript | 開源許可證 | GitHub |